You either need more than 3 doors per villager or to set up an infinite breeder such that most of the villagers are outside the volume where they are counted as part of the population. And you can either have a farmer type villager and a farm, toss them food yourself or trade with them.
The doors need to be wooden doors and they need to have more daylight access on one side than the other, within 5 blocks straight out from the block the door is standing on (or the bottom block of the door), the blocks the door is on/in don't count.
So you have a line of 11 blocks with the door standing in the middle and the door has to have originally have been placed with the flat sides facing the 10 blocks where daylight is counted, but it doesn't matter if the door has been opened since.
And the doors need to have a villager within 16 (or 15?) blocks or they won't be counted.
For the infinite breeder you need at least 6 doors with 1 villager on the same level and all the others at least 6 or 7 blocks above or below (or far enough away that they are outside the village).
Beware that an infinite breeder really has no limit to how many villagers can be breed so you should make sure there is some way to turn it off.
If you feed the villagers yourself and they have no farm and farmer they will stop when they run out of food.
If you trade they will only breed once before you need to trade again.