I have run into this with other TIFF files, and it turns out they actually write out the last strip incomplete. So the "not enough data" message is accurate.
I can't really think of a good fix for this in GDAL. In theory libtiff could be modified to allow this, but I'm not sure that is a good idea.
It would be helpful if someone could offer a small sample file for experimenting with.