There is no other reason for the continuing existence of H1B. It's simply a naive and rather stupid cost-cutting measure.
The analogy to SA is absolutely inappropriate, because SA was run on the basis that black South Africans were fundamentally morally, ethically, culturally, and socially inferior to white South Africans, solely on the basis of skin colour (as a proxy for heritage.)
With H1B, no one cares about anything except cost of labour.
Which is a problem, for reasons that may not be obvious. Consider the possibility that moving (say) Indian talent to the US will stall growth in India and move it to the US.
It may be a good deal for individual Indians, but it's not necessarily such a great deal for the Indian economy.
In fact you get a kind of reverse Ricardian effect, where free movement of labour can depress all the economies involved. The source economy loses talented people, and spending on wages contracts in the destination economy, which drives down consumer demand. (Profits increase in the short term - hurrah! - but if you drive down consumer demand enough, your economy falls off a cliff.)
https://en.wikipedia.org/wiki/David_Ricardo#Comparative_adva...
Morally free movement of populations should be a human right. But you have to get rid of nation states and most notions of economic competition to make it work, and I'm not expecting those changes any time soon.