I'm in Canada but I have friends who moved to the US for postdocs. And like the others, I have no good advice to give to these people. But here is how I see it:
1) Like the others said, I don't think you can force a PI to keep someone indefinitely for a temporary position. Maybe they can negotiate to extend that period to 2 years instead of 1 year before they join the lab. It's a tough situation because often times it means your first year you are mostly focusing on applying to secure your own funding which takes time away from doing research and getting results. How you get funding without showing a substantial amount of data (i.e. close to publication) is beyond me. A friend of mine (Canadian) left her first US postdoc because she couldn't get her own funding after a year. The lab gave her a 6 month grace period but after that they kicked her out. I don't know how you can possibly generate enough data to secure outside funding in that amount of time and i'm always suspicious of people who get a paper in 6 months. How many times did you do each experiment? Anyways, she's still in the US at a different institution doing a second postdoc. She was rushed to find something though and she was lucky she found this. Keeping a decent back up postdoc in the back of your head is a good idea. Otherwise you might be forced to go wherever and do research that doesn't interest you or worst end up working for a micromanager PI. Doing a postdoc in the US is just too competitive.
2) I know of a small number of graduate students and postdocs at my institution (well 5 to be exact) who told me that their main motive to relocate to Canada was immigration and not education. Some of them don't even care about the research. I admit this is rare. Most people who are in science actually want to be in science. But it does happen. Once you get your PhD from here, you become a citizen. Same if you work here for 3-4 years. 2 of them admitted that they don't event want to continue in science and they will quit as soon as they get their citizenship! Essentially they are just creating competition and diluting the resources! I'm also an immigrant so I can sympathize to a certain degree. But I came to Canada with my family when I was a teenager and I did all my higher education here. I don't think it's fair to the rest of us who actually want to continue in science. The funding situation here is also pretty tough but it's not as competitive as the US because there are fewer grad students/postdocs.
There are no good answers. As new trainees, the cards are stacked against us. That's just how the system works. And the more attractive the country/lab/science, the more competition there is.