How could I make a water-resistant touch/tap sensor (similar to push button) for all-weather outdoor use?
Membrane switches are probably your best bet. You might be able to salvage them from an existing keyboard - such as the ones on microwave ovens or other kitchen appliances.

Piezo crystals generate analog voltages - more voltage if hit harder. I suspect that interfacing might be a little more complicated than contact switches.

Both are momentary switches (i.e. they make contact during a small period of time). In case of the membrane switch during the activation. Piezo switches only generate a voltage which pressed and released. So you will need some electronics to 'remember' the position (i.e. ON/OFF).

If you feel up to it, small controllers (such as the famous Arduino) can do this easily.

Some suggestions for DIY buttons:


Membrane buttons are not difficult to make. I'm not sure if they still exist, but there were some toys that 'clicked' mechanically when squeezed. It's the same principle. It's just difficult to find the suitable materials. You need a conductor which is sufficiently 'springy', without 'memory'.
You could make capacitive sensors too. Make a disk - say about 2cm diameter on a PC board, pile a non-conductor - thin mylar or polyester - with a hole about 2.5cm, and then another layer of polyester with a (thin) copper disk. If you connect the disk to a square wave (software!) then you can detect the voltage on the PC board disk - it'll change amplitude if pressed. The larger the disk, the more sensitive.