Mike, I know this can be a real problem. Switches suddenly become "Stuck" and need to be replaced. The contacts have become welded together by a capacitive-discharge spot welder.
I first saw this in Broadcast equipment which had numerous tape machines with remote control boxes. They were switching 24 VDC relays, and at some point the manufacturer added .1 uf capacitors across all the switches due to some RF interference problems. (There was lots in stations located close to an AM transmitter tower). After 1 to 6 months, switches started to "Stick On". I got a calls like "I pushed stop on tape 2 and as soon as I let go of the stop button it starts again." The manufacturer sent out (remember mail?) a service bulletin telling customers to cut all the caps off, and add caps in 2 places in the circuitry. This was a .1uF cap soldered right across the switch contacts and charged to 24VDC. I bet the spike current was 100 amps or more.
Since then, I designed control panels for testers with 100's of switches. When I was using conventional switches, I learned some IBM manual showed how you needed an RC and not just a C across switches. In some equipment those went on a circuit board, not physically on the switch. I heard then of designers having problems with this who hadn't heard the suggestion. I still have some of the IBM Part Number little things with the R-C covered with shrink tubing.
These days, if you get deep into the manuals from Omrom etc. they do talk about the problem. I'm digging....
and here they say what NOT to do:
OK, I've been burned by this in the past, and it's easy to do right and easy to ADD to an existing typical pull-up or pull-down switch going into Arduino..
Flakey, intermittent and hard-to-find problems are the worst!
I'll try to get time to get scope photos some time. Realistically, um, July.. I'm about to pack up a lot of my Arduino stuff to ship to Italy, and some will come back to USA for the Summer. But I might not spend 50 hours a week on this stuff if I get my boat running ..