Huh? I've never seen this, in over 20 years of using vim. To
insert a newline just use
s/foobar/foo^V^Mbar/
where ^V^M are Control-V Control-M.
I never thought of that; I've always tried what works in ed, namely:
s/foobar/foo\
bar
and that gives me
foo^@bar
I call that a bug. (This is vim 8.1).
It certainly wouldn't occur to me to use ^V^M, anyhow: ^V^J would seem more reasonable, but ^V is ignored in that context.
Before vim 7 there was a bug so bad I had to use nvi (and, often enough, compile it from source): at that time, undo undid everything back to the last action in vi-mode. If you had never been in vi-mode (as I usually had not) it undid everything back to the last file-loading command! That one made me grind my teeth a lot. Even now I habitually write before undoing, just in case.