Not how we do it, but that is an interesting idea.
I think that is reasonable and I would do that too, but we ran into the issue that it didn't make sense for everyone to "click" at the same time and then some would level and others wouldn't. My players just preferred to have everyone level at the same time. So we went with the strictly downtime leveling.
I think in many ways wizards are the exception to the general rule. A fighter gets to the point where they are just enough more effective at attacks that from a game perspective they get an additional attack. Sorcerers (and several other classes) are just slowly gaining power until one they they're strong enough to manipulate more energy.
Leveling is always going to be over-simplified and artificial, I don't see any way around it. Because it's so artificial I don't tie it to the game world. There's nothing wrong with basing leveling on down time, I simply choose to not mix the meta-game with the story.