Prueba con esto:
@echo off
Setlocal EnableDelayedExpansion
set carpeta=d:\Carpeta prueba
set /a nlinbor=2
set sufijo=NUE
pushd %carpeta%
for /f "tokens=*" %%n in ('dir /b FICHERO*.txt') do call :tratfich "%%n"
popd
goto :eof
:tratfich
echo Tratando fichero %~1
for /f "tokens=2 delims=:" %%x in ('find /c /v "" "%~1"') do set nl=%%x
set /a nl=%nl%-%nlinbor%
set /a n = 1
for /f "tokens=*" %%l in ('type "%~1"') do if !n! leq %nl% echo %%l>>%~n1_%sufijo%.%~x1&set /a n+=1
goto :eof
He parametrizado el número de líneas finales que se deben despreciar (variable NLINBOR), la carpeta de trabajo (variable CARPETA) y el sufijo a añadir al nombre de cada archivo de salida (variable SUFIJO). Tal como está el tratamiento en el archivo de salida no se incluirán las líneas en blanco que hubiera en el archivo de entrada. Si eso supone algún problema habría que reestudiar el asunto. Tal como está se generarían ficheros con nombres como FICHERO001_NUE.txt, FICHERO002_NUE.txt. Si prefieres otra solución dilo y lo miramos.