So I was testing around today on my world and went to go far out in the world,
I went 1,073,741,824 blocks out and found that a village only generated a fountain and sometimes just the tree.
If I go in a village less than 1,073,741,824 blocks, then the village fully generates, this is causes by the 32 bit integer limit overflow and the numbers go into the negative and that prevents the whole village from generating and only generates the tree or fountain.
I notice this happens at half of the 32 bit integer limit at 2^30 blocks out instead of 2^31 blocks out
Iron golems and villagers seem to generate normally.