Well, after mucking around with server configuration, it looks like this one was a remnant of my brief use of Wordpress MU before I switched to Wordpress 3. There is a plugin called Unfiltered MU that used to keep the editor from stripping out HTML in Wordpress MU (I guess the plain old wordpress had similar code integrated into it, but it didn't work right in MU).
Right when I first installed, I chucked that plugin in the mu-plugins directory sort of as a reflex, and then forgot it was there. Removing it seems to have fixed the problem with truncation.
Wanted to throw it out there as another potential cause of truncation, in case others run into this.