I don't see what makes workers born in America more important than workers born in any other country. Everybody should get the same chances.
The thing is, Indians and Chinese are fleeing their countries because it's so much worse there. If life was better in their countries, they would stay. But it's not. So instead of trying to help their fellow citizens, they run away and make Americans pay the cost.
A job is not a handout, it's (supposed to be, at least) beneficial to both sides of the relationship.