Our base is more than 80 blocks from the nearest village and the other 3 villages we trade with are even further away so I do not think that our beds are being counted. My friend and I switched to a different world and while it has some issues for the most part the overbreeding seems to have stopped. We had one village where the unemployed would not use a workstation even though several different types were available. We escorted these worthless villagers outside the fence enclosing the village and sent them away to a 'village far away where they hang out and do nothing' (aka we sliced them into little pieces). New villagers appeared and they have taken jobs and are being productive members of our little society.
I have this same issue although not to the extreme of so many villagers. (I am using Windows 10 version on PC). Mine usually stop at 2 over the bed total. I am going to try and remove all wheat and see how that goes. I remembered that this is an older post from last May and mine was triggered by the 1.13.0 update.
I have the same issue although in a regular village. I put down two smithing tables and traded with both toolsmiths that appeared until they were both master level. Then a new villager appeared as an apprentice toolsmith. This new apprentice toolsmith will on occasion keep the master level toolsmiths from renewing their trades at the workstation which is why this is an issue for me.