1.Батником вы можете создать текстовый файл с JAVA кодом:
echo Это JAVA код>>file.txt
Каждую строчку ява кода предваряйте командой echo и в конце операторами перенаправления в файл.
2.Как откомпилировать созданный фай - не в курсе, явой не занимался, думаю что в JAVA SDK есть компилятор командной строки, изучайте его параметры и просто добавьте соответствующую команду в конце батника. Но JAVA SDK не входит в комплект JAVA JRE, который обычно стоит у пользователей компа.
3.Для автозапуска - поместить в автозагрузку. В винде несколько вариантов автозагрузки, гуглите и смотрите, что вам больше подходит.
Самый простой способ - поместить батник в каталог автозагрузки текущего пользователя, но возможно вам не это нужно.
4.Про закрытие - видимо вам нужно предотвратить не закрытие батника, а закрытие выполняемого java кода. В любом случае это достаточно не тривиально и любой способ можно так или иначе обойти.
Самый простой вариант - стартовать второй процесс, который будет следить запущен ли первый и если нет, то запускать. Но гарантии нет, т.к. сначала могут прибить второй, а потом первый.
Возможно вас удовлетворит вариант, например, с сокрытием окна выполнения батника, но стандартного способа не существует, есть не стандартные варианты типа утилит cmdow, nircmd - они это умеют (но, например cmdow антивирусы не любят, хотя это и не вирус), так же можно скрыть окно с помощью простого скрипта на vbs/js - гуглите.
5.На счет запуска из-под администратора - есть команда runas, но она спрашивает пароль, который надо вводить руками. Есть сторонние варианты подобной утилиты - гуглите.
PS: Ваши хотелки в совокупности достаточно подозрительно выглядят. И они не решаются легко.