Seem like sensible changes, though more is still needed. Requiring H1B holders to leave the country to renew paperwork is an insane anachronism. The per-country caps also seem like a throwback to the early 1900's era immigration exclusion policies. Re: the concerns over "immigrants taking our jobs!". As a native-born American working in a large tech company today - the threat is very clearly not from H1B's and other…
Per-country caps remains an absolutely good idea. The goal of immigrants should be to integrate into the society they are joining. Without per country caps you can start creating strange enclaves and you get some of the issues Canada is having.
If India were divided into smaller countries like Europe, the same South Asian population, culture, and diversity would persist, but the artificial constraints tied to the name "India" would disappear.