I think the best way to deal with this is to deny non-citizens any benefits that come with citizenship. Remove the lure and the fish will quit biting.
This should be part of any immigration solution, but as with any solution, there will be loop-holes.
What about a non-citizen woman who gives birth to a baby that is automatically a citizen. Shouldn't she get governmental assistance? (The law needs to be clarified to eliminate the granting of automatic citizenship at birth when the woman is a non-citizen). One of the claims that could be made is that the non-citizen mother is taking care of a US citizen, therefore the mother should receive assistance and be allowed to remain in the US. After all, you can't deport the citizen child.
Somewhat more difficult to incorporate into a solution concerns welfare payments. Here we get into dissecting federal and state laws. If a state wants to give welfare money (collected by the state through taxation) to a non-citizen, there is nothing wrong with that. As a state's right issue, this would also apply to other state actions that are a benefit to non-citizens, such as driver licenses, professional licenses and so on. The federal government, to a degree, is out-of-the-picture. Theoretically, state's could adopt laws and policies that do not allow non-citizens to receive state governmental assistance. The obvious concern; too many states are purposely granting non-citizens equivalent rights to citizens, making citizenship essentially meaningless.
The federal government however is in-the-picture when it gives the states grant monies. The complication with granting state's federal money is that the origin of that money becomes "
muddled" (co-mingling). Theoretically, the federal government can mandate that a state can not disperse federal funds to non-citizens. Unfortunately, the will of the politicians at the federal level to impose such restrictions seems absent.