termostato semplice... per iniziare

Se inserisci un delay di 3000 millisecondi in quel lasso di tempo i pulsanti non vengono controllati.
Dopo il digitalread dei pulsanti aggiungi un delay(15); come sistema antirimbalzo.
Inoltre dovresti mettere le resistenze di pull-down sui pulsanti, se non l'hai fatto.