Yeah I completely agree, Diretooth also mentioned this way of levelling in regards to Elder Scrolls. This would probably be a hefty amount of work to accomplish and balance though.
Another point here could be why is the traditional method not "good enough"? Do you want to just have something different in the game that is not the norm as to differentiate your game or is their a good reason for not necessarily gaining exp in battle? The OP mentions having more control over what EXP gets given so they could better predict under/over levelling. This could be good for balancing sure, but would it be too much restriction on the player? Or even more important would the player even care/notice?
The traditional method isn't necessarily not "good enough" but it's been shown that in many RPGs that permit grinding, the player will at some point resort to spending several hours farming encounters just to make the game easier. In a story driven RPG, all grinding really does is detract from the experience a developer has put time and effort into making. Grinding is best left to MMORPGs, where longevity is artificially generated by locking everything behind a massive time gate instead of adding more content. As a single-player developer, we all have the option to provide an enriched experience not based around watching numbers go up solely for the sake of doing so. While number based progression is ultimately how we determine the worth of our character, it should never be how we determine the value of a game's experience as a whole. What made getting those numbers up
fun and rewarding is important.
Overleveling can be solved easily if you wanted to go with the traditional experience system by introducing an experience point threshold. Gains from fighting significantly weaker enemies will show diminishing returns or even give no experience at all, encouraging the player to move forward.
As a sidenote relevant to this topic, I've broken down three principles of role-playing games into sections based on research and experience to better help myself with my own project. Hopefully everyone can benefit from this as well.
Growth-every player wants to see his or her character make progress. Starting from a lowly adventurer that barely knows which end of the sword is the pointy one and becoming a demigod capable of killing dragons with a single disapproving glance. Growth can be encouraged through more than just killing monsters and completing quests to level up. Rewarding a player for exploring and discovering areas off the beaten path, interacting with the world in certain ways, crafting items, random events the player can stumble across and influence the outcome of, and even through dialogue choices. Story growth is just as important as character growth, and the two are interrelated. Having a character/party that marginalizes the central conflict of a storyline because he or she grew that character/party to a point where all potential threats are little more than inconveniences or minor roadblocks makes for far less exciting, enduring gameplay. As a game designer, there are ways to minimize the possibility of the player growing too much too quickly, and balancing out how the player grows contributes to this fact. The story in the game needs to make progress with the player as well, so that it can meet the player in the middle and provide a cohesive experience without being muddled, too easy, too difficult, or offputting through senseless complexity.
Acquisition:The next step on a player's path to growth in a role-playing game is usually acquiring power, whether it be through collecting loot, crafting, quest rewards, boss rewards, exploring and discovering rare weapons, training via exchanging gold to NPCs, or re-running marathon dungeons for the chance at some good drops. This stage of gameplay isn't about putting an end to growth and finishing the game, but rather seeking enjoyment in the mid to late game, getting geared up and prepared to tackle the challenge ahead.
Perfection:The final step on a player's journey, and the most rewarding part of playing a game. This is the time where equipping the best items, finding the most effective combinations of spells and abilities, and going for some completionism is all that is left before tackling the ultimate chapter of a game. When a player knows the final conflict of the game is on the horizon, he or she will do everything to make certain that the character(s) are ready for that last step. Perfection can and usually does loop back around to Acquisition as a means of getting the most power possible.