Unfortunately, what your idea does is take all the power and give it to the students. Currently, all (or the vast majority) of the power is with the schools/coaches, so that’s not good either, but knee jerking all the way to the other side would simply create a host of different issues, subjectively stupid waiver approvals, and the grinding of our collective gears.
You basically have three choices.
1. A simple, rules-based system which gives schools and coaches essentially absolute power in creating and managing their rosters. This is the historical reality of college sports.
2. A simple, rules-based system which gives players leverage against coaches and schools. This is what I'm proposing.
3. A system in which the two interests are balanced at the discretion of the NCAA. This is what is currently emerging in college sports.
The question of "is the player ditching the school or is the school ditching the player?" is a very difficult one to investigate and adjudicate even by a well-staffed, highly competent, publicly trusted and corruption-free organization. The NCAA is none of those things, and basically has no chance at all to make those decisions in a consistent, reliable, publicly acceptable way. Everybody thinks we ought to be able to do #3, and tends to support #3 in theory, but it will always be a disaster in practice and smart fans should realize that.
And as for the potential parade of horribles about a player-friendly system, there is no doubt there would be problems that make people justifiably mad, as there would be under any of the three options. But I think predictions of total chaos are a bit overblown, at least over the long term, because after whatever initial friction there was, the entire structure of the relationship between schools, coaches, and players would start to fundamentally shift. Decisions would be made based on building and maintaining player capital within the program, which IMO is how the smart programs who don't necessarily have constant access to top talent operate anyway.