If you want the entire site, it'll have to be frames. If you use an include, fopen() or any other method of inserting the actual HTML code into your page, none of the images would work as they will still refer to the orignal (relative) location.
If you REALLY can't design a frameset that'll do, you could always use the file(www.google.com) function to create an array where each element is a line in the source code of the specified URL. You would then need to replace any relative references with absolute ([url]http://[/url] etc.....) paths. And this wouldn't only affect images, you'd also have to consider external stylesheets, external .js files, the list goes on. If you use javascript within your page, this could clash with any on the included page as well.
The best way has to be with frames - why not just turn scrolling off in the frame that will contain the external site?