You're on to something there. The GOPe contributors like the cheap labor. The Democrats like the guaranteed (D) voters. No one in power has any interest in changing the current situation.
But when you think of it, two simple laws would do the trick. One, no government benefits except to US citizens. And two, make it a crime to hire anyone who is not here legally. Put repeat violators in jail. Don't just fine them.
But wait...those laws might offend someone. They're very non-PC. And jingoistic. So forget I said anything.