Mir ist bekannt, dass der ESP einen Internen Pull Up Widerstand hat. Wollte nur sichergehen, dass es nicht daran liegt. Außerdem wird manchmal auch ein niedrigerer Wert zur Störsicherheit benötigt. Siehe auch why use an external pull up resistor leider nur auf Englisch.
Ich würde auch das Entprellen der Schalter wie in post 4 probieren. Probiere mal den Code aus.
LG Frenik