For this to actually work, you need to either regulate prices, or have a public-owned, government-run nonprofit with an explicit mandate to keep the prices as low as they can be, regardless of demand - and throw subsidies only at it.
Most civilized nations have decided that they don't want that kind of thing a long time ago.
However, what should/could be done, is states could do what they've been supposed to do this whole time and begin actually covering students' tuition directly. Unfortunately most states don't increase tertiary education spending YOY at a rate fast enough to cover the increasing costs and enrollment numbers. So the burden falls on the federal government, which gave us this terrible debt-based system