This system works pretty well for 0AD, but their units are more modular anyway, and I'm not sure that most Glest developers and modders want to put in the work to create three variations for almost every unit.
Thinking about it more, it is a lot more complex than I thought, as each skill would need a new model. In affect, a new unit XML for each level (that's the term I believe the OP was looking for) as CFS mentioned would be necessary. On one hand, however, that allows leveled units to be far, far more customizable. Modders would be able to control how the unit looks, their stats, and even give the leveled unit new commands (an archer could level up into a fire archer, for example. Currently, it's impossible to change how the attack projectile looks on level up; a new unit XML would allow that change).
With such a system, users could optionally create different models, yes, and John has a good point about the extra work it would take. However, I'd anticipate rather simple changes, for the most part: stuff like changing the colour of a unit's sash (which could be as simple as modifying the hue slider for the texture: work for 30 seconds). However, it would still allow the very dedicated modders to create more advanced level ups. For example, an archer leveling up could be given a compound bow, or a tank could go from an early model to a more advanced model. The only limitation is how much time the modder wants to invest in their mod.
Of course, support for the MD5 model format could drastically make these minor modifications easier, as we could give our archer example a compound bow, but use the exact same animations: only the mesh file would have to be changed, rather than having to export a new G3D file for each animation.
Of course, this feature also sounds rather difficult (or maybe not, RE: MoLAos's comment).