There isn't a right or wrong way to do this, just different things to say about the world we're creating.
Maybe not, but there
are good and bad mechanics. And the mechanic you've settled on is a bad one that punishes, severely, lack of system mastery, or building characters organically through roleplay. And it's particularly glaring in a system that, otherwise, is so well designed to avoid those sorts of traps.
If your level is one lower than your current level then you can never cast a spell, get to 10th level, and suddenly be a 9th level cast. That's fine, but it doesn't quite fit the world—why did the wizard spend 9 levels working on spellcasting to be that awesome, where you spent 9 levels stabbing things and suddenly become a master caster?
But you're not a master caster. A master caster is, as you point out, a Wizard with 10 levels of casting, and 9 Wizard advanced moves. The Fighter who takes Dabbler at level 10 "suddenly" gains more casting potency than a fighter at level 2, sure, but he's not just 9 levels a better Fighter; he's also 9 levels a more awesome
character.
Furthermore, why must the Fighter spend 9 levels only stabbing things? Perhaps the FIghter was also studying spellbooks all this time, and it only just "clicked" at level 10? It's never feasible for mechanics to enforce that all possible roleplayings a player might dream up using them will make sense. After all, I could roleplay a Wizard that does nothing but stab things with a dagger all day, and never looks at his spellbook, yet somehow gains more spell levels, and can "suddenly" cast 9th level spells at high level when he finally looks at his spellbook again. All we can do provide mechanics that
can be roleplayed coherently.
This is nothing new to your game; in fact, this principle is the very core of the game. The mechanics do not tell us what is and is not possible in the fiction. The
fiction does that. The mechanics provide support, and give us a fair way to resolve tasks and conflicts that do not have an obvious resolution.
So, can a 10th level Fighter suddenly become a 9th level caster? Unless it's mechanically broken for that to happen (and it isn't), the mechanics should be silent on it. Let the
fiction determine whether it can happen. Let the DM challenge the player to justify it. Maybe the Fighter's had his father's spellbook on him the whole time. Maybe the evil wizard he just slew transferred a fragment of his dark soul into his. Or maybe the DM and player can simply compromise and say that those caster levels will need to be gained gradually over the course of some passage of in-universe time. Perhaps add that as a piece of advice for the DM.
This is ultimately the same as the Fighter attacking a giant iron golem with a dagger. Is it encoded into the mechanics of Hack and Slash that a dagger is useless against a 20' magically-animated golem made of 6in thick iron? No. The fundamental mechanics of the game cite common sense to tell us that. Unless, of course, the Fighter's player can justify it to the DM.