Não sei ao certo o que você acha de um "endereço de hash"; uma URL com um hash nela se refere a uma âncora na página em questão, e não é um recurso em si.
Consulte a RFC 2616 para detalhes.
Independentemente da sua pergunta: você terá que repetir toda a Regra, incluindo todos os RewriteConds, para combinar com outra coisa.
RewriteCond $1 ! \.html?$ [NC]
...
RewriteRule ^([a-zA-Z0-9_-]+)$ /#!/$1 [NE,R]
Além disso, mova o " - " até o final da coleção para que você não tenha que escapar.
Ah, e livre-se do IfModule; você saberá se estiver carregado ou não.