The magic system definitely has its flaws but I disagree with the effects thing (well, maybe if you absolutely want to do everything by the book, but has that ever happened in any tabletop campaign ?).
One homebrew rule our DM has is that he allows us to "prepare" 1 spell. Basically you cast it in advance so you know the effects before you actually use it (clerics don't get that rule because their spells are much more reliable). Which obviously helps a lot with the randomness. We started without that rule and definitely saw an improvement after that, because the mages can now use whatever spell they think applies best to the situation, knowing they have a backup spell that won't fizzle out at the worst possible time
Outside of combat he generally makes spells effects a lot more "open" which also helps a lot.
Edit : also we usually don't bother with the "physics stimulation" side of spells' effects. For example, iirc the enchanted rope spell specifies a maximum weight and some other things. We never actually calculate that, the DM just goes "nah that's too much" if he feels like it