Having read through the thread, the idea - while good in principle - IMHO doesn't go quite far enough.
First off, it'll only work well if you a) use real actual xp rather than milestone and b) allow each class to advance completely independent of the other. Level-up in either class happens when it happens (or when training is done, depending on your table rules).
Once you've done those you can then open up the flexibility to allow for uneven class splits - the player has to declare what % of earned xp is going into each class (can change between adventures, perhaps) such that a character can in effect have a primary and secondary class. So, I could be a 90% Fighter 10% Cleric, functioning as a Fighter most of the time with the Cleric side there mostly to provide the occasional emergency cure or, later, divination.
Every time I get xp, 90% of them go into Fighter and 10% of them go into Cleric and I run a separate xp track for each side. Yes this is a bit more math for me-as-player, so what: I brought it on myself.
When the Fighter side bumps, it bumps. When the Cleric side bumps, it bumps.
Oh, and you get all the benefits of each class unless there's overlap, in which case you (usually) get the better. Thus when needing a save, for example, a 50-50 Fighter-Cleric would roll against whichever class gave the better result. Hit points, you take an average rounded normally. A 50-50 F-C would use a d9 hit die, the 90-10 example I use above would be about a d9.75 which rounds up to a d10.
The drawback, of course, is that after 1st level (which is the only time a two-class character really rocks) you're forever behind in level, eventually significantly so.
There'd be some tweaking required to the advancement table, particularly at higher levels, to keep the power levels vaguely the same between single-classers and double-classers. Certain class combinations would almost certainly need to be hard-banned, also a hard limit of two classes per character - no dipping.