Этот скрипт оставляет в наименованиях папок не более одного пробела. Каюсь за недостаточно внимательное отношение к условию задачи
Код:

@Echo Off
Set "InDir=С:\Temp"
SetLocal EnableExtensions EnableDelayedExpansion
For /F "usebackq delims=" %%D In (`Dir "%InDir%" /B /S /A:D 2^>nul^|Sort /R`) Do (
Set "DirName=%%~nxD"
Call :Replace
Ren "%%D" "!DirName!"
)
GoTo :Eof
:Replace
Set "iDirName=!DirName!"
Set "DirName=!DirName: = !"
If Not "!iDirName!"=="!DirName!" GoTo :Replace
GoTo :Eof