Here's an idea to solve this forever. Load switching. Make a circuit that hooks to a dummy load and switches over to the diode after a few seconds. This then absorbs spikes. Do the same on turn off. Thinking a dpdt on off switch. One side is power and the other is the switch circuit. One shot 555 and 4066? Then again zener can lock voltage. Is there a currrent version of a mov? I'm sure this can be engineered out.