O problema ocorre porque a pasta Temp do usuário em que o serviço do servidor SQL está sendo executado não está acessível nas credenciais em que a consulta está sendo executada. Tente definir a segurança desta pasta temporária com restrições mínimas. O dsn que é criado toda vez que você executa uma consulta openrowset pode ser recriado sem nenhum conflito de credenciais. Isso funcionou para mim sem nenhum requisito de reinicialização.