capacitors always short the disturbance to GND, not to 3V3, in fact to 3V3 could damage the 3V3 signals.
in 99% of cases, a hardware designer will choose to have the signal as "active low", with a pullup. Simply invert the input in software, if you insist in using active high logic.
if a 100nF capacitor to GND is not effective enough the four other things you can do are:
- Using twisted pair wires to the external switches.
- Shield the twisted pair, connect the shield to ground close to the RPI
- use a low resistance (100 Ohm to 1K) resistor between de GPIO/Cap and the switch wire, this will also prevent potential problems when the GPIO is accidentally programmed as output.
- Loop the twisted pair through a ferrite ring, close to the PI.
and/or perhaps you can look at the chainsaw, and make sure it contains an EMC filter.