What if class leveling didn't use experience at all? What if, instead of leveling your hero, you could pick another class from the dice bag. The upside of it is that you are now a level two class (opening up the use of the level 2 dice face) and you have a second class level that you could throw. The downside is that you can only be one class. If you start with a barbarian class and draw a knight class, you are level two but you can't be both a barbarian and a knight. This would up trading and it would still be relatively balanced because you are sacrificing a treasure and an experience point for a class die.
For Example:
You just beat a level 2 Ghoul as a level 2 [race] with five experience. You can either A) pick a treasure and go up to level 3 (with six experience) or B) pick another class die from the class bag and stay at level 2 (with five experience). You are currently a level 1 Knight and you decide to go with option B. You, unfortunately draw a mage class. You are know a level 2 Knight or Level 2 Mage, but you may only roll one of these classes in your next combat. It seems, however that player 2 is a level one Mage with a shiny artifact that he can't really use since he can't use two handed weapons. You can offer to trade him your Mage die for his weapon. In this case, you would remain a level 1 Knight, making him a level 2 Mage. Or, he could also trade you his mage die for your knight die (allowing him to use the two handed weapon). This would make you a level 2 Mage and him a Level 1 Knight.
Additionally, with this system, the dice could technically be different. Some mage dice may have a variety of spells on them. The only solid is that each dice has faces that contain levels. What is on each level might be different. It might be possible to have a die that is moderately weak, but has a different color images, meaning that by having that class die, you get +1 Fame.
The only thing this leaves to want is the question of what to do with Races.