So it turns out it's a contact problem at the point of the buttons. I tried cleaning the controller port and the cartridge connector as well, but it didn't work, and in desperation I hit the start button quite hard, and it worked! I basically have to push my thumbnail into the groove to get the button to work, though, so I'm considering opening one controller up to see if a cleaning or something makes the button operate more like it used to.
I guess it's possible the cleaning had some effect, I'll have to double-check the other two controllers to see if they're as difficult to use.