O lote pode ser tão simples quanto este forro:
@move "%~1\*" "%~1\.."
O til remove quaisquer citações de inclusão que possam estar presentes no valor do argumento. O conjunto extra de citações foi a fonte do seu problema.
EDIT - Você não diz o que você quer que aconteça se um arquivo com o mesmo nome já existir no diretório pai. Como o comando MOVE está em um arquivo em lotes, o padrão é sobrescrever automaticamente o arquivo na pasta pai. Se você quiser que o script solicite instruções, dando a você a oportunidade de evitar a sobregravação, então você precisa da opção /-Y
.
@move /-y "%~1\*" "%~1\.."