A única maneira de isso acontecer é do MariaDB ter um bug, porque uma vez que um Tx modifica um registro, ele o bloqueia até que ele cometa ou reverta. Outro Tx bloquearia o UPDATE devido ao bloqueio, mas a condição deve ser reavaliada após o bloqueio ser liberado.
Tente mudar para READ_COMMITTED e veja se resolve o problema. Pode ser uma anomalia REPEATABLE_READ.