Government funding is crucial to education (they way it's currently handled). The federal subsidies have an enormous affect on pricing, and all the resulting price pressure is upward.
Right, by artificially increasing demand with all the available money, prices will increase
One way to reduce the cost to the taxpayer and the cost of education, without reducing the quality would be to introduce a merit component even to need based assistance. Tell the kid who wants to study medieval history that he doesn't merit as much assistance as the kid who wants to be an engineer, and the kid who got C's in high school that he doesn't merit as much assistance as the kid who got A's.