Prueba a poner la ruta absoluta en vez de relativa a tu página de 404. Me lo he encontrado alguna vez, que, si en ese caso, no se pone la ruta absoluta no parece funcionar:
ErrorDocument 404
http://nombredominio.com/404.html
A ver si así funciona y a ver si alguien tiene idea de porqué en el ErrorDocument hay que poner la absoluta cuando en el mismo htaccess en otras reglas funciona con la relativa