They should just make it so your weapon or armor produces the materia, but you don't have to loose your weapon for it or armor that said weapon or armor can only generate one piece of materia ever.

It would make collecting higher end gear much more rewarding cause you could get a good weapon and along with a good materia to use. I mean for real who would want to hold an piece of gear that took forever to get and always wondering what that materia it could be.