I still find Vancian magic too clumsy and, in my opinion, incompetent. However, I am still working out a system that works better for my table. I have been testing this in my game and so far, I like it and the Players seem to like it as well.
What we are doing is allowing MU's to cast any spells within their ability to cast as determined by the tables in the PH and as long as they have the spell in their spell book. Kind of like free-casting in that way.
However, their ability to cast spells cost them Hit Points from their current total. ach spell costs as many points as what level spell it is. Thus a 3rd level spell reduces the MU's current total by 3 and so on.
By doing this, it seems the players have really gotten an greater appreciation of the value of magic items such as wands, rings, staves, rods, and scrolls as those items do not incur a HP loss when used.
I've also noticed that the players now also tend to put more thought into what spells they cast and when they cast them a lot more. It seems most tend to favor casting defensive and utility spells from their own strength and favor using magic items for casting offensive and some utility spells if the have them.
It's a pretty simple change that seems to make things more interesting for my players with MU's. The MU still uses only a d4 for gaining HP at each new level so it encourages conservative spell casting.
I have made one concession on the issue of XP and HP gained when they level up. I have a spell that can be cast by them or on their behalf by a Master who is training them to level up that allows them to auto max the HP gained at level up at a cost of a certain amount of XP. (Right now we're using 1,000 XP as the cost but no one has gotten to try it yet. We'll see how and if it needs to be adjusted when we get to that part.)