I don't think you can penalize schools for players leaving early for the NFL or NBA, when players are forced to come to college to be able to play in those leagues. If you don't want players using the NCAA as a stepping stone to the professional ranks, then don't make the NCAA a mandatory stepping stone.
If done the right way, there is no penalty for leaving early for the pro ranks.