Seems like the sensible solution would be to auction off the immigration quota slots. Decide on some number of business/talent based visas to be issued each year. Then do a rolling auction of the visas. If a person gets a visa, comes to America, but then does not like their job and goes home, the company gets a prorated refund. If the person stays more than five years, they get a green card automatically and are free…
Along similar lines, the cost of sponsoring H-1Bs should grow exponentially with the fraction of the company's workforce that is on H-1B, beyond a small threshold.
When I came to the US on H1B I made up 25% of the company, at the time the cost was already significant enough to prevent any "abuse".