I think the key thing here is to simplify. That's what zenphoto is about.
Unfortunately I deteste having to create a separate folder, run some utility to batch convert all my pictures to a smaller resolution and then upload it and then remember to delete them after I'm done. It's an extra step that makes me not want to upload albums.
For me I don't mind the server taking an hour to precache because I hate resizing even more. And I precache because I don't like the lag time because my original files are big (again not an issue if wasn't so darn large).
What could be done is if there was a separate project for an uploader function for zenphoto. I'm taking this from using Walmart or similar online printing websites where they make you run this application to upload and submit the files to them. Something like a java application (for more os compability) or some activex application where you can select and upload your images. Then select the folder or images you wish to upload, and hit the upload button. From there the java/activex application will resize and upload the files to zenphoto. This will reduce the sizes of both resolution and filesize making zenphoto able to do the initial caching in real-time when it is first requested without too much lag time.
Just throwing it out there!