Podemos usar FIND_IN_SET
en order by cláusula para obtener los valores en el mismo orden como este.
SELECT `username` as users FROM usertable WHERE usr_id IN (54,68,46) ORDER BY FIND_IN_SET(`usr_id`,"54,68,46")
Pero no sé cómo GROUP_CONCAT
en el mismo orden. Si alguien da la respuesta para eso en este tipo de enfoque simple, puedo aceptar esa respuesta.