Designing PCB with Multiple power supplies
First I'd move as much of the 5 V stuff to 3.3 V as possible.  That is easy for the microcontroller and relays.  Even if you still run the water level and pH sensors from 5 V, the current draw will be small.

Given the above, the 12 V you receive gets used directly for the pumps.  Just a 7805 can make 5 V from that.  Since the current draw from the 5 V supply will be low, no heatsink should be required.  Use a off the shelf buck switcher chip to make 3.3 V from the incoming 12 V.  There are many to choose from in this voltage range and current.  For low voltages like this, I'd probably start at Microchip, then ST, then TI, although chances are good Microchip has something suitable.

Added

Above I was trying to minimize the current requirement for the 5 V supply so that a simple linear regulator was used.  My thought process was to therefore move as much as possible from 5 V to 3.3 V.  However, a better answer is to move the relays from 5 V directly to the 12 V input power.  12 V is a very common relay voltage.  Most likely, whatever 5 V relays you are using come in 12 V versions too, in the same package and with the same switch contacts.  These can be easily driven from 3.3 V logic outputs using a resistor, low side NPN switch, and kickback catch diode per relay.

This means you probably only need a few 100 mA at 3.3 V, which gives you many options for buck regulators with integrated switches.