Automatic overflow killswitch for watering pump
You've made a great attempt, but I'd suggest the following:


You need a diode across the relay to protect from the inductive kickback when turning off the relay damaging any driver.
You get better drive if you connect the relay from +5 to the gate output since it's a saturated transistor.
You just need your water level detector as an input to your MCU, you don't need to gate it with a signal from the MCU through an external gate. 
You have software to do all the logic.   
Driving any relay that has 120-240 V on it is always hazardous, I'd suggest you buy a module rather than build your own circuit.


You can buy very cheap Arduino peripherals such as this relay board from various sources such as Amazon or Ebay. They have reasonable output connections for the AC side and you are likely to find it much easier and safer to hook up.


This board already has a transistor driver and protection diode built in so all you need is a port signal, 5 V and Ground from your MCU to turn it on an off. 

There are also plenty of water level sensors for Arduino such as this moisture sensor ...they almost universally have an on board transistor and hook directly to an MCU port.


I'm assuming you think you need a kill-switch to override the system in case your MCU fails to turn off the relay. However this would only seem to avoid a software crash ....which seems unlikely in such a simple system. If you really are concerned, then you should research ways to implement both brownout and watchdog timer events to ensure your MCU is always running correctly.