It does use buffers to store the page as a string.
The size limits should be relatively large and configurable from your php.ini. Really even if you didn't use buffers, as long as the page was stored as a string you would probably run into similar size limitations.
The solution could be to break the page into several smaller plugins. How large is the page you are trying to use? What is the exact error? We may be able to come up with a work-around by having you add code to the plugin to clear and store the buffered page into several smaller strings in an array as well.