Went back and retested to give complete info on this. NOTE: All the initial villagers in the breeders were spawned in with a spawn egg.
For my testing, and since i didn't know exactly when it happened, I started with 1.16 Pre 7 and this issue was present. I tested it FIRST by updating the world each time and retesting with the carried over villagers AND fresh villagers both in that snapshot. With a player 200 blocks away from each, villagers would have babies in the spawn chunks, but not in non-spawn chunks. I updated this same world and tested through the 1.16RC1 and got the same result each time. The "broken" thing.
THEN I tested the 1.16RC1 in a completely fresh world, and did NOT get that result. Babies were born in BOTH spawn chunks and far from spawn with the player 200 blocks away from them.
For a final test, I opened another fresh world in 1.15.2 had the villagers make some babies.
THEN I upgraded the 1.15.2 world directly to the 1.16RC1, and babies were born in both areas (spawn and 400 blocks away from spawn with a player at the 200 block distance, between them) - so things worked as in 1.15.2.
Something happens in one of those other snapshots that messes things up.
In this final test it was even the exact same villagers carried over from 1.15.2 to 1.16RC1.
So the only players who will have problems with villagers exhibiting this issue will be those who have upgraded to the snapshots between the major releases.
Tested just now to double check, in 1.15.2 I was able to get the breeder to work with a distance of 200 blocks. Tested outside of spawn - I can test spawn breeding if needed.
I have no longer had this issue in any of the 1.16 worlds I tested. I've done hours of testing with breeders and iron farms and had no issues at all with villagers losing beds, this is the only thing I saw, and just once (and did not get /data to see if it a case where one just got pushed over)
[media]
After working with this and reporting this as a bug myself, I have a code-digging friend who told me it is in the code that babies born in a biome different than their parents have a 50% chance of having either the new biome or the parent's skin. All my work showed that same 50% ratio. So... working as intended.
I duplicated this bug on video using a data pack that shows inventory. It does appear that when throwing food back and forth the food just disappears. Even if both villagers have food, when they throw to a hungry baby the food sometimes disappears for everyone. I did NOT document that giving them food separately will fix this. Here is a link to my 3 minute video showing what is hopefully the bug. https://youtu.be/ykBSqq0gvQw
There is nothing spawning in these, no neutral mobs, no peaceful mobs on the surface, no bats.