MCLR reset is disabled using the fuses and the pin is used as digital input.
I actually have a 10µF cap between GND and +5V, just forgot to put it in the schematic.
I have tested a breadboard circuit where I use an optocoupler between the PIC and a N-channel MOSFET, it seems to work well.
The original circuit was already on a PCB and worked very well with high-current bulbs and also with a modified horn where I removed the internal contacts and just pulsed the MOSFET, it worked even without schottky diodes.