I've been thinking a bit about this lately, and I think you could achieve this slowly in the US with an expansion of the visa lottery process.
If the worry is that future migrants might not pay their way, why not charge them more for visas, or make them pay extra taxes, or restrict their access to welfare benefits? Such levies could also be used to regulate the flow of migrants, thus avoiding big, sudden surges.
This is what the US does right now through the lottery system but it's just so restricted that no one in their right mind could call the US borders "open".