I am traveling to Montreal and to NYC this summer. Can someone recommend a Carrier and SIM card for voice & data?
Unfortunately, you will not successfully find a carrier that provides cheap/unlimited services in both countries, though most tier 1 mobile providers will roam for a less-than-fair price. However, I would look at obtaining a "Pay-as-you-go" SIM in Canada for the amount you think you'll need, then do the same when you enter the US. Sounds like you'll remain in the cities (and not head out into the rural areas surrounding), so you'll be safe getting the absolute cheapest service you can find. Major department stores or electronics retailers in either city like Best Buy will help.
If you're starting in the U.S., you should look into getting T-Mobile. When I had friends visiting from Europe last year, I went to T-Mobile to get a stack of SIM cards for them and they just activated them online.
Not to sound like a salesperson or anything (I'm actually not on T-Mobile, though I probably would be if I were just visiting the States), but here's are the perks for T-Mobile for folks like yourself just visiting:
I don't know if there's a Canadian version of T-Mobile, but if you get this in the States, you can use it in Canada as well. T-Mobile has stores everywhere, and you can also order a SIM card to be mailed to where you're staying in the States (doubt they'll mail internationally though, so you can just get it when you arrive). Here's the link to their individual plans for you to consider.
Simple Mobile is a good service and something you can get on Amazon as well.
Also, the more popular companies like At&T and T-Mobile offer unlocked SIM options. All these services are around 40-60 dollars with voice and (substantial) data privileges.
For the USA use Roam Mobility, see website for details. Unfortunately Canada does not have a similar service. All our CDN providers have Pay as you Go.
Tmobile has the best data plan world wide