MP2359 dies after reset
I think you have a problem with switch bounce. EN is probably not designed to deal with the erratic bounce from a switch; it was probably designed to be driven by a CPU or other logic.

Instead of repeating info here, take a look at the excellent debounce tutorial at allaboutcircuits.com The plot below is from that site and is probably what your EN signal looks like.



The reason that turning the input on and off does not cause problems is because a well designed SMPS IC is designed for this and gracefully resets itself when the input voltage drops too low (see "undervoltage lockout" spec).

I suspect that it gets damaged only when EN goes high because at startup the SMPS is under very heavy load as it charges up the 22 uF output capacitor. If your switch glitches then, the switching logic may be getting corrupted and leaving the internal pass MOSFET on too long causing the inductor to saturate. When that happens, the inductor current skyrockets and the pass MOSFET is damaged from overcurrent.

You can confirm this hypothesis by replicating the "Start-up through enable" plot shown in the datasheet. Monitor EN, SW and VOUT with the sweep set at 200 us/div and trigger on the rising edge of EN just like they show. IL would be handy if you had a DC current probe. From the datasheet, here's what it should look like.



If this hypothesis is correct, then you should see switch bounce as EN goes high and then SW will get stuck at 12V right at the point when the pass MOSFET gets damaged.