The main points are these:
1. We can't give money to everybody to pursue degrees that are not economically sustainable.
2. We can't give money to everybody to go to college because not everybody will complete college.
3. We can't give money away without considering the cost, and/or quality, of the institution.
4. We can't keep loans as non-discharagable.
5. We can't keep the US Taxpayers on the hook.
As a result, you can either take over all education and fund it through the government, paying for everything for everybody, or you can only allow those who can and want to go to college compete for a limited number of spots.
OR
You can find a away to align interests between the borrowers, schools, and US taxpayers through a risk-sharing agreement. The US Government will lend students money, at maybe 10% interest for the first year, 8% for the 2nd, 6% for the third, and 3% for the 4th. If the student completes school they will get all loans cut to 3%. The school takes the first 10% of losses. If losses exceed the national average by any more than 20% (or a standard deviation or two), the school will be immediately placed on a watch list. If losses do not fall to 120% within 2 years they are cut off, forever. Tuition will only be able to increase by CPI. Any increases above CPI have to come from private funding. Debt will be dischargable, subject to long-term means testing. For example, doctors who have graduated and completed residency and such will not be able to discharge unless they have some mitigating factor (disability).
I am sure others might have some ideas to incorporate but this would be a decent start.
I'd prefer that over just giving away unlimited amounts of money.
Another thought would be to make the first two years of community college free, subject to a tuition cap of pre-free costs + CPI. That way the non-completers will flush out in 2years and you won't go on to fund them forever.