Tenía el mismo problema que tú, me estaba volviendo loco, hasta que pude leer la solución en el foro en inglés.
Para que el mapping de los botones se mantenga correctamente hay que conectar ambos mandos de forma exactamente igual en cada placa, que sean gemelos. Luego, enciendes la Raspberry sólo con un mando conectado, el que quieras que sea EL PLAYER 2. Lo configuras normalmente, y LUEGO conectas el que quieras que sea el player 1.No hace falta configurarlo porque lo reconoce como igual, y automáticamente, por alguna razón, guarda el segundo mando que conectas como el player uno.
Esa es la manera en que conseguí que no me mezclara la configuración de los botones cada vez que apagaba la consola, y que no me cambiara el jugador uno por el dos.
En caso de necesitar configurar cada mando, hazlo por separado, conectando uno por vez.
Espero que te sirva. Un saludo.