Как в bat файле удалить текущую директорию?
Текущий каталог вы не удалите, т.к. он занят вашим же процессом cmd.exe. Надо перейти в другой каталог, а затем уже удалять.
Что значит RD %cd% не удаляет? — Должно же быть какое-то сообщение об ошибке, которое нужно привести в вопросе.

Если в каталоге есть открытые файлы, он занят какими либо процессами или недостаточно прав для удаления каталога или файлов в нём, то естественно не удалит.

Чтобы каталог не был занят самим процессом cmd.exe перейдите в надкаталог и удалите прежний рабочий каталог:
for %%D in (.) do  (cd ..& rd "%%~fD")
или, если переменная среды CD не определена, используйте одноимённую псевдопеременную:
cd ..& rd "%CD%"
В обоих случаях требуется расширенная обработка команд (по умолчанию включена). Команда RD скорее всего потребует дополнительные ключи (/S и /Q).

Следует заметить, что если сам командный файл находится в удаляемом каталоге, то после выполнения текущей команды (возможно, составной) последующие команды выполнены не будут, так как командные файлы в память целиком не считываются.