Personally, I'd give out most of the interesting abilities by 5th level, and maybe a special capstone ability around 9th or 10th. Just make core class abilities that scale by level, and let the max level be open ended.
Rogues get 1d6 sneak attack every odd level. Fighters get an extra attack at 5th, 10th, 15th, and every 5 levels after that. Wizards get one new spell slot of 6th level at 11th, and every odd level they get a new spell slot one level higher. A 10th level slot at 19th, an 11th level slot at 21st, etc.
Class design is simple and basic, every class gets one or two core features that scale with level, and then a few ribbons at low levels to flesh them out a bit.
OK...other than having all the good stuff given out by 5th level (I'd rather it be spread out over a greater range), I'm with you so far.
Each level in a class costs 1000 XP per level. (For clarity, level progression doesn't start at 0, it starts at 1000 XP. A character with less than 1000 XP is effectively a 0th level character.)
Perhaps more intuitive for 1st to start at 0 xp and then build in the concept of negative xp to account for commoners, 0th-level types, and so forth.
That you're accounting for 0th level is, however, commendable.
BUT: higher levels should take more xp to earn than lower, for a bunch of reasons:
--- if defeating bigger badder foes doesn't earn bigger badder xp numbers(1) it'll feel like you're going nowhere
--- flip side: if defeating bigger badder foes does earn bigger xp numbers, the higher levels will go by in a flash
--- lower-level characters in a mixed-level party(2) would never be able to "catch up"
--- campaign longevity.
(1) - IMO a monster or foe etc. should be worth the exact same number of xp whether you defeat it at 1st level or 20th (1e and other editions get this wrong IMO); with the J-curve making it very sub-optimal for a high-level character to advance by wading through lots of mooks (though it oculd be done).
(2) - the game has to allow for mixed-level parties!
You can multiclass anytime you want, as long as you spend the XP and have a story hook for it. If your 5th level fighter wants to start leveling in rogue, they spend a few weeks practicing in their downtime and spend 1000 XP.
I'd rather see the classes advance independently a la 2e. So, if your 5th level Fighter wants to multiclass into Rogue it spends a few [months or years!] training into the new class after which it divides earned xp between the two classes e.g. if it earns 500 xp for something, 250 go to Fighter and 250 go to Rogue.
Your proficiency bonus and max hit Die is dependent on your highest level in one class. If you're a 5th level fighter/4th level rogue, you still have a proficiency bonus of +3. Your class abilities that scale with class are dependent on the level you have in that class.
Yes. The only change I'd make is that your bonuses etc. are the better of what each class would give you. Thus, say, if you're a Ftr-5/Rge-4 but being a 4th Rogue gives you a better bonus with tools than would the 5th-Fighter, then the Rogue bonus is what you'd use.
Hit Die are rerolled at every level, and you take the best X dice out of the pool of dice you have. The fighter 5/rogue 4 rolls 5d10 and 4d8, and picks the best 5 dice out of that pool, since they are "5th level max".
Sorry, not a fan. This could easily see a character in fact lose hit points on gaining a level, e.g. if the best 5 dice on this roll add to 32 but the best 6 dice (when the Fighter bumps to 6th) only add to 25.
I'd much rather have it that your hit points are forever locked in once rolled; even to the point of if your Con score changes later your hit points don't retroactively change to suit.