The main factor that indicates whether or not a Pokemon can eat more Pokeblocks/Poffins is Sheen, or fullness. You can indicate the "Sheen" of a Pokemon by looking at how many stars are encircling it on the contest stats screen in R/S/E, or the "Sheen" bar in the Summary Screen of D/P/Pt.
So bottom line:
You can't feed Poffins to a Pokemon who has had the maximum Pokeblocks
Hope I helped!
Contest Stats and Sheen DO transfer over when you transfer them.