On the criteria you have given there is little to choose between Montreal and Toronto. Both have good shopping, plenty of fast food, are extremely safe, and have good hotels and B&B.
Toronto is the larger of the two cities, and the more cosmopolitan. It has a somewhat greater array of shops. It's going to have a wider variety of food. If you want your fast food to be Lebanese, Portuguese or Laotian, Toronto is more likely to have them (though Montreal doesn't do badly). Montreal has a couple of fast food chains that don't really exist outside Quebec, such as St Hubert chicken. And you should make sure you try the bagels.
In terms of language, you can almost always get by with English in Montreal, but you will find some places where French is the native language. Even then people usually know enough English to interact with you. In Toronto English is the main language of communication, and French is rare, but if you want to try that Lebanese, Portuguese or Laotian food you may find that some of the people selling it speak Lebanese, Portuguese or Laotian as a first language. This is not usually a problem. They will almost always know enough English to interact with you. If you stay on the well-trodden tourist track everyone will speak English.
If you are looking specifically for McDonalds specials, poutine is available across Canada, though I would strongly recommend trying it somewhere other than McDonalds.