Of course you can't:
Firstly, you need delayed expansion if you want to work with variable manipulation within loops.
Secondly, you didn't put the IF statements on the same line.
Code:
@echo off
setlocal enableDelayedExpansion
FOR /F %%X IN (x/list.txt) DO (
REM echo %%X
SET /A "odd=%%X %% 2"
if "!odd!"=="0" (echo EVEN %%X
) else Echo ODD %%X
FOR /F %%Y IN (y/list.txt) DO (
REM echo %%Y
SET /A "odd=%%Y %% 2"
if "!odd!"=="0" (echo EVEN %%X
) else Echo ODD %%X
)
)
pause