точка обозначает любой символ, кроме новой строки.
я думаю, что вы должны избежать этого
RewriteRule ^([^/])\.([^/])\$ /$1$2.html [L,R=301]
Я действительно не понимаю, что он должен делать, но теперь он находит символ перед точкой, точку и символ после точки