Optocoupler is failing to isolate circuit
Connect a capacitor across the microcontroller Vcc to GND directly on top of the chip (leads short as possible). The capacitor should be a ceramic type eg.  100nF to 1uF.

If you want to try shielding, the shield should be connected to GND. 

Your open breadboard construction is not very conducive to achieving low EMI susceptibility, to say the least. To try to figure out what is causing it, you can actuate the horn manually with and without the optoisolator in place and see if your uC still hangs. You know the EMI is coming from the horn, but you have not really established how it is getting into the MCU.