Poderia ser então 64 no lugar de 1 no movimento e o speed inicializar com algo como 1.2?
...
self.speed = 1.2
...
movimento = { UP: (0, -64), DOWN: (0, 64), LEFT: (-64, 0), RIGHT: (64, 0) }
Utilizando um número float pode dar mais controle para não aumentar tanto assim a velocidade.
Sei que de primeira não parece, mas multiplicar o passo de 64 por um valor x não apenas "aumenta" o passo. Aumentar a velocidade, na prática, é apenas andar mais no mesmo tempo. Talvez tendo o código completo dê de a gente testar e entender melhor.