You have to stop graduating useless PhDs. Graduate students, and often postdocs (though more justifiably), are recruited primarily in the expectation that they will provide work for their advisors/Profs.
If Profs could no longer benefit directly from the labor of grad students, in the manner that teachers don't directly benefit from the work of students, then academia would be less inclined to churn them out. Supply would go down and both average quality and salaries would go up.
I liked to think about taking in half the number of PhDs but increasing their salary, focusing only on applicants that can realistically produce. Or even better, shortening the PhD to 3-4 years, forget the salary altogether, and turning it into more of an apprenticeship, with the postdoc being the workhorse of academia.
Each tenured professor produces PhDs way above replacement rate. A tenure spot only opens when the Professor leaves academia, but during his career he produces dozens of PhDs. The system can't work out like that.
so waste taxpayer money on more positions which create more postdocs and grad students? Just kicks the problem down the road.
What if there's a limited social capacity to do science? As in, at any given time there's it's only worth it to allow some percentage of people to do science (and not all of them will be doing science). Throwing more money at the problem will only muddy the waters by drowning out the good voices with junk, and what you will see is thousands of journals, and more fraud and bad science percolating through the upper journals. Hmm...