The United States does not have a labor shortage.
It is not about a labour shortage, it is about the race to the bottom in terms of working conditions and pay.
It sounds like broadly speaking we agree with who benefits the most from immigration though. My take on it though is that no matter what you do people from Mexico are always going to try and flock from there to the US to work, and keeping them all out is an effort doomed to failure. We have a hard anough time in Europe stopping them crossing a fairly wide sea so the poxy river you have is no barrier at all, even with all the fences around it.
The only real option is making sure that when they get here they are not able to undercut our own labour force at the bottom of the market. The best way to do that is to shift the punishment to the people who employ illegal immigrants with no work permit. Also, minimum wage laws might help too providing the punishment for breaking it as an employer suitable outweighs the benefit of cheap labour (ie: prison time). The main thrust should definitely be though that if you employ someone and do not check their legal status sufficiently you get hefty fines for the first offence then prison for any repeats.
I also have no problem with outright denying things like foodstamps to recent arrivals, I just doubt it will do the slightest thing without the measures I mention above apart from make them more desperate and so willing to work for less.