Respondendo a minha própria pergunta, espero que seja útil para outra pessoa.
Meu notebook HP vem com um acelerômetro, aparentemente para desligar os discos rígidos caso caiam em algum lugar. Este acelerômetro está registrado em / dev, e todos os jogos estão lendo este dispositivo como se fosse um joystick. É por isso que só aconteceu quando duas condições foram satisfeitas:
- Eu estava jogando um jogo (aconteceu no XBMC também)
- O laptop estava aberto (descobri que esse problema não aconteceu se eu conectei um monitor externo e fechei o laptop - acredito que o acelerômetro seja desligado quando o laptop estiver fechado)
Conectar um joystick real e dizer a cada jogo para usar o arquivo correto em / dev resolveu o problema.
Eu sei que esta é apenas uma resposta parcial, porque não explica por que estou recebendo mudanças de volume em vez de movimento aleatório, mas é o melhor que eu tenho. Isso também acontece nas distribuições Debian, btw.