Using archaeic analogies of printers and pages, the previewing the results of the query vs. creating the whole GPX is similar to the processor either "printing a table of contents" or "printing the whole book".
Well, more like printing the index, as you have to calculate the relative distance between each cache and the centroid of the search area. If the search are contains more than the requested number of caches, you also have to rank the caches by distance.
From a database point of view, it would be interesting to see what information is indexed vs. just stored. I would imagine that the search criteria is indexed.
Packaging up the .gpx files, zipping them, and then emailing will take longer though, I'll give you that.