It’s not clear that that would necessarily lead to better allocation of resources; I’m sure there are some degrees that give people skills to create a lot of value, but right now people can already borrow money to get a degree if they think it’s going to pay off; on the other hand, there’s currently so much societal pressure to go to college, a lot of students spend a lot of time and money on worthless degrees that don’t really help them, or if they do help them, only as a (very slow and inefficient) signaling effect that they’re the type of person that can make it through college. I’m not really sure what problem having the government pay for college tuition would solve. It would probably just exacerbate the current problem of colleges having no incentive to keep costs down as long as people are dead-set on getting a degree regardless of the costs or lack of benefit.
I think a better solution than basically throwing fuel on the fire is to educate people about what their options are to help them make sound economic decisions, including different degree options and their value in the job market, and also about options if they choose not to go to college, since a lot of college graduates end up taking jobs they don’t need degrees for. There also needs to be a reversal in the trend of employers requiring college degrees as a form of signaling; I think evidence suggests that college admissions boards aren’t really any better at predicting student success than results from intelligence tests like the SAT. It’s going to be very politically controversial to convince people that a lot of the value associated with having a college degree is actually just in being a smart person, but I think it would make the economy hugely more efficient and save people from having to go to college just to signal their intelligence. Another big part of the solution, for those who do actually need to learn things and earn licenses, is going to be legitimizing and popularizing new forms of education made possible by technology, e.g. MOOCs, and somehow setting more efficient methods of credentialing to go with.