Eu arriscaria dizer que você está certo sobre o % , que é um daqueles personagens que precisa escapar . Tentando substituir o % por %% para cada instância.
Além disso, um .bat é apenas um comando armazenado para uso posterior, então todo o resto deve ir bem.