In case you are curious the situation here in Calgary (not a tech hub by any definition) is entirely different. The recruiters use similar tactics but the pool of working professionals is rather limited so you quickly develop a reputation. Sometimes you get the feeling that the it's the same players shuffling around a dozen employers.
The economics however are completely different because imo job opportunities are very limited. The base salaries you are describing for a recent grad (or American mid-senior level developer) are on par with middle management with approximately 15 years of experience.... So from a financial perspective it's really a no brainer many of peers who can leave are long gone. It's rather depressing but I almost feel like the Canadian education system is a farm team for American software companies.
First things first: get a LinkedIn profile if you don't have one already. Spruce it up, keyword it straight to hell - name drop pretty much every technology, field, and subfield you have substantial experience in. Almost all recruiters rely heavily (some would say exclusively) on LinkedIn for discovery, make sure you're positioned to show up in their searches.
Secondly, if you have friends in the Bay Area, Seattle, or NYC, they're probably being contacted daily by recruiters - tell them to send some your way. US recruiters may not be actively seeking out Canadians, but if a qualified one lands on their doorsteps I'm certain they would be pleased.
I have a recruiter I've worked with in the past I'm happy with (disclosure: I don't get any kickbacks or anything), if you want to contact me privately we can see if there's a fit there (email in my profile).