>Can I make a separate city page for USA location and rank it there […] don’t have any physical location in usa
Yes. You can make a landing page and target *state + service*, *city + service*, or *neighborhood + service* keywords. This used to be how everyone was doing local SEO in the past.
My biggest concern would be that **Maps/Local boxes in the Google search results might take all the click**s for your keywords. Even if you are the highest-ranking traditional organic result, you might have a low clickthrough rate (CTR).
To get into the Maps/Local results, you need a **Google Business Profile** (formerly known as *Google My Business* or *GMB*). You need a physical location for those. There are ways to get a listing without a physical location – but that is not something I want to recommend.
To estimate if the traditional SEO approach, without a physical location, is worth it, you could use the CTR data you have from your activities in Canada, combine it with the search volume in the US, and calculate how many clicks you can reasonably expect.