Você não pode escrever um script dentro de um bloco de dados em linha (< < EOF)
Tente algo assim:
OUTFILE=file3.txt
while IFS=, read a b; do
echo "first number: $a"
echo "second number: $b"
# you can call runnable here, for example if you want to give it one number at a time:
echo "$a" | ./runnable input
echo "$b" | ./runnable input
# or something like this:
./runnable "$a" "$b"
done >$OUTFILE