Esto no aborda completamente el problema que describiste, pero…
Si la mayoría de estos usuarios spam o sospechosos comparten las mismas estadísticas que mencionaste aquí:
entonces, ¿has considerado cambiar el valor predeterminado de la configuración clean_up_inactive_users_after_days?
Está configurado en 2 años a menos que lo modifiques, pero no veo ningún inconveniente en reducirlo considerablemente.
Solo elimina usuarios con 0 publicaciones y 0 tiempo de lectura.
Configurarlo en algo como 2-3 semanas es muy razonable. Cualquier persona que se registre en un sitio de Discourse y no publique ni lea nada durante 2-3 semanas, obviamente no es una persona real que quieras tener en tu comunidad.
Incluso si lo son, 2-3 semanas es un tiempo aceptable para que su cuenta sea eliminada, ya que probablemente perdieron el interés, por lo que está bien que tengan que pasar por el proceso de registro una vez más si realmente están interesados.