Stefan,
I have verified that Hunchentoot does not read uploads into main memory by running the :hunchentoot-test server and using the "file uploads" test. I sent a 2GB file and noticed no increase in the working set size of the Lisp. The upload took too much time, though, and making the body parsing more efficient might be a worthy optimization target. Yet, it does not seem that Hunchentoot itself is responsible for your working set size problems, at least judging from this test.
Can you isolate the problem and post a bit of code that'd allow us to reproduce it?
-Hans