O motivo é simples.
Quando você trabalha com um arquivo batch, cada parâmetro é acessado através de% 1,% 2,% 3 ... até 9 parâmetros.
Os parâmetros são separados por um espaço, portanto, se você inserir mais palavras e separá-las com um espaço, elas se tornarão, em essência, parâmetros múltiplos. A solução é simples, coloque as% input% dentro de aspas para fazer o batchfile entender que ele deveria ser um parâmetro. Seu script se torna:
set /p input=
echo %input%
call test.bat "%input%"