but our main keywords are not showing in google.com.
It's not that easy. They may be showing - but you may not be seeing them.
If you're in Canada and search using google.com, you will likely see different results than someone in the US using google.com. The results being served from Google.com appear to depend both on the site and the location of the visitor.
The hosting may help, but there's an easier way I think. In your Google webmaster account I believe you can set the country. I would set this to US before moving the hosting. Both should help but I'd be hopeful that just setting the webmaster account correctly should be enough. Note that this may not correct the issue of a Canadian searching on google.com, just of US visitors searching on google.com.
I did look into hosting a number of years ago and I'm of the opinion that there's a couple places where it's tough to connect target country with hosting country. Canada-US is one such place, parts of the UK is another. Canadians host in the US, Americans host in Canada.
So if in fact you are targetting Americans, that's what I'd do. If you're targetting Canadians using google.com, I don't know why you'd bother. Google.com redirects to google.ca for most Canadians.