How about getting the width and height of the largest screen at startup and just fixing the buffer to be that size? Then use the WM to expand the terminal, or add in scrolling. Either way, the buffer stays the same. Of course this doesn't work if your terminal can move to another display, but thanks to X11, it's stuck on one, hurrah!
Rob