As variáveis ENV do Apache, conforme definidas na reescrita, não persistem em redirecionamentos - assim, quando você faz o R = 301, volta ao ponto um - o pedido está funcionando em um novo contexto do apache. Esse é o seu loop infinito.
Se você quiser fazer isso via reescrita (o que faz sentido - então o navegador vê a URL apropriada) você provavelmente terá que configurar um cookie ao invés de tentar usar ENV, ou então fazer algumas coisas funky com caminhos de servidores reais nos bastidores, excluindo certos de redirecionamento.
Além disso - o [L], como outros já disseram, é inútil - ele fará com que o resto dos hre rewriterules sejam completamente ignorados.