Immigration is easy to fix.
First, make every US Citizen pay the exact same tax [a head tax] by dividing what Congress spends by the number of Citizens. Second, enforce voter ID with two years of paid in full tax receipts.
If they pay both bills they are welcome to stay and vote. If you are born here you get to stay even if you are a deadbeat, but you may only vote if you pay. The immigrants who contribute will still come and we'll be glad to have them. The birthright deadbeats won't affect us or new immigrants by sucking the life out of them politically and financially.