Villagers will not pick up food items used to encourage breeding as determined by the MC wiki. Tested on the Sponge Public Server.
Sponge Vanilla 6.0.0 BETA 217 : 1.11.2
"Not shagging!" - Inscrutable
Was the mobGriefing GameRule disabled? It appears that entities can only pickup items if mobGriefing is allowed.
I just tested that, with difficulty peaceful. They eat, but they still don't reproduce. SV 218.
Villagers are now plundering crops with abandon, but no offspring result. SV 231.
I suspect Golem spawning is also affected, as none have appeared in any villages. SV 234.
So I am having this issue as well and am getting bugged about it daily from players.
The server was created with an old version of sponge vanilla api 5, no clue what build, just that it was in December. Villagers would breed. Then i updated sponge to the latest vanilla api 5 (build 385) and the villagers would still breed. I reset the server (deleted the worlds and let them regenerate) and now the villagers wont breed. They get the purple spiral particles but not the green particles, they should be getting both in order to make them breed. If i run the server from the vanilla minecraft launcher (no sponge or anything else) the villagers begin to breed immediately. I hope this helps with figuring out what the cause is and making a patch for... i dont know, lets say vanilla api 5 that is no longer supported and newer.
I don't really have anything valuable to add but that title is wonderful.
@kashike this is still a bug as far I'm aware.
OK, JBYoshi gave this some testing on the latest SV and SF and managed to get baby villagers. I can confirm the same for the SCS, running SV 271. It did take spawning fresh villagers and somewhat extreme conditions (a room with 20+ doors in each case). It may be that previously spawned villagers have breeding problems, but this is unconfirmed. Villager Golems are also spawning now too. @aWitch-Doctor give it a test and see what your results are.
The conditions aren't that extreme, actually. Vanilla code dictates that (quoted from the Minecraft Wiki):
Specifically, villagers may mate if the current population (updated only once per second) is below 0.35 times the number of "houses" rounded down.
In my case, that matches the value from my testing in a debugger - 24 doors * 0.35 = 8 villagers maximum.
I have tried everything you suggested and they still wont breed. I am using SV api 5 build 385 though
Could you post a .zip of your world, along with the XYZ coordinates of the village? I can then pull up your exact situation in my development environment.
Last night I failed to reproduce this on a checkout of the latest stable-5 commits on SpongeCommon and SpongeVanilla, and the latest stable-5.2.0 commit on SpongeAPI. I then noticed SV used a really old commit on SpongeCommon. When I checked GitHub this morning, I saw build 386, which seems to be (with a few new fixes) the same as what I tested on last night and brings SV back into sync with SpongeCommon.
Less technical translation: SpongeVanilla build 386 has a lot of bug fixes; I tested last night with something pretty close to them (although not quite the same) and got the villagers to breed.
@aWitch-Doctor Could you test with build 386?

SpongeForge: 1.12.2-2555-7.0.0-BETA-2807
Faithcaio showed off his Villager torture skills and we managed to breed them.
Most helpful comment
I don't really have anything valuable to add but that title is wonderful.