I really don't have an answer, but one thought crosses my mind since I've been doing multiple browser windows that have some function calls back and forth.
Specifically, have the view that is seen by the user in a seperate browser window from a browser that grabs the info from the server. Periodically grab the document from the non-viewed browser pane and repaint it to the client view window (or just use DHTML in conjunction with the two DOMs to make the repaint smooth). Once transferred, have the invisible browser ask for the more data back from the source URL - using document chunks to transmit the info.
Probably not a clear description of the mechanics, but perhaps just dividing the problem in two - one browser for viewing and another for painting - might solve the user interface issues?