Not sure if anyone had already thought of this one, but how about doing race as if it were a gestalt with classes?
Pixie LA 4+1 HD//Rogue 1
10,000 xp //0 xp, gains xp as a 5th(10,000-15,000xp) level character
Pixie LA 4+1 HD//Rogue 2
10,000 xp //1,000 xp, gains xp as a 5th(10,000-15,000xp) level character
Pixie LA 4+1 HD//Rogue 3
10,000 xp //3,000 xp, gains xp as a 5th(10,000-15,000xp) level character
Pixie LA 4+1 HD//Rogue 4
10,000 xp //6,000 xp, gains xp as a 6th(15,000-21,000xp) level character
Pixie LA 4+1HD//Rogue 5
10,000 xp //10,000xp, gains xp as a 6th(15,000-21,000xp) level character
Pixie LA 4+1//Rogue 10
10,000 xp //45,000 xp, gains xp as a 11th(55,000-66,000xp) level character
Pixie LA 6+1//Rogue 10
21,000 xp//45,000 xp, gains xp as a 12th(66,000-78,000xp) level character
ECL is then based off total xp count, from both sides of the gestalt. The resulting character will lag behind an untemplated character, but only by a bit once hes more class leveled than ECLed
Any racial HD would simply then be gestalted(rather than becoming useless with caster classes or a dead weight with particularly flimsy racial HDs like fey) with the character class side of matters, and since many racial abilities(besides stats) taper off in usefulness as your class level goes up, they don't impede your experience gain as much, while their cost remains. For races that can advance further, simply pay the appropriate xp to raise the racial side, templates apply likewise.
Less effort needed than the splitting of everything into feats I think, though a further development of this into a more point like system could be assigning racial attributes an experience cost each and buying them as you advance. I personally think paying it off on the racial track would suffice.
You could expand this to include multiclassing as well(just add more gestalt 'tracks'), but the availability of dip abilities that remain useful despite being low level makes that kinda wonky. Not to mention accommodating for prestige classes(which would probably go on top one of your base class 'tracks')
EDIT:More examples, hopefully more clarity