After giving this idea of four year scholarships a thought, I would like to offer the following compromise:
Each school can only recruit 22 players each year and can have a total of 88 kids on scholarship at any time. Scholarships are for four years. Once signed, they are binding for both the school and the athlete. If a player gets hurt and can't play anymore; he counts against your scholarship limit for four years. You kick him off the team for misconduct; he counts against your scholarship limit for four years. He quits his freshman year; he counts against your scholarship limit for four years.
Just to clarify, if he quits or the school kicks him off for misconduct, the school would not have to honor the scholarship, but he would still count against your scholarship limit for the four years after he signs.
Once a player signs, HE CAN NEVER PLAY ANY SPORT FOR ANY OTHER D-1 SCHOOL. There would be no transfers granted for any reason. Mom gets sick back home - too bad. You miss your girlfriend who is 500 miles away - tough. He can transfer to whatever school he wants, but it will only be to pursue academic opportunities. And he will still count against his previous school's scholarship limit.