S.H.
If he has poop, just change him right away.
He should not be in a poopy diaper all night.
Or he will get a bad diaper rash being in it all night.
Have him poop, before bed.
My son does that since he was a toddler.
All I know is, (although my son is potty trained), my son is 5 years old, a tall big lean kid for his age, and he wears a size 6 Huggies Overnights, for bedtime. And it fits him. The reason my son wears night time diapers... is he is still wet at night. Which is normal for his age.
Night time dryness does not occur until even 7 years old etc.
Anyway, thus, for a 2 year old, I would think a size 6 would fit your son. It fits my 5 year old and he is not a small boy.
And, get a few waterproof bed pads, to put DIRECTLY under your child, for bedtime. This makes any leaks on the bed, much easier to clean up. Then the sheets/bedding does not get soiled and you just have to wash the bed pad.