The language in the RFC is not clear. What is a full size packet? Is that the MSS which could potentially vary from segment to segment depending on the sizes of the headers. Is that the receive window size which could also vary? Not clear.
I don't think there is any general way to always send an even number of full-size packets... whatever that means. That is another good reason to remove the unbuffered send. The algorithm came from uIP 1.0 from around 2001. Might be interesting to see what uIP in Contiki did with that in later years. More discussion here: https://groups.google.com/g/nuttx/c/bh01LHix7nM/m/bL8242BQCwAJ Johnny is a pretty knowledgeable guy a references a couple of other RFCs there.