Porque kill %n
executará o shell integrado, o que fará com que os trabalhos interrompidos sejam enviados SIGCONT
para que eles possam perceber que foram mortos.
Para conseguir isso com PIDs de trabalhos interrompidos, você precisa:
kill $pid
(ou kill -TERM $pid
se você quiser explicitar)
e depois
kill -CONT $pid
Você não precisa do -CONT
se preferir a melhor arma do crime:
kill -KILL $pid