And honestly I can't see any solution that's anywhere near perfect or favorable.
Perfect is a non-functional standard when it comes to people. For anything. You can't design an etiquette that will somehow perfectly prevent people from being rude to each other. You can't design a social system that will somehow prevent people from becoming criminals. And there's no way to create a system that will somehow make mages only use their powers for good while preventing other people from shitting on them. It's impossible. People have free will. You can't MAKE them be like ANYTHING.
The way you measure a system built around people and free will is not its "perfection" but whether or not it is RIGHT. The way you determine whether a system is right or not is by figuring out--does it allow the people within it (ALL the people within it) to take the actions that enable them to continue to survive and thrive as human beings. If the system does that, it's a right system. It's a rights-respecting system. If some people within the system decide to be colossal asshats with their free will, oh well, that's going to happen in ANY system. But you can at least know that you didn't destroy the lives and happiness of people who never hurt anyone in an attempt to achieve a goal that literally cannot be achieved.