chawk, the problem is that the upload field in web2py does not use blobstore on GAE, it uses a blob property on the model. very different, and limited to 1mb (or maybe something smaller based on your test). if you want the file size permitted by the blobstore, check out http://www.web2pyslices.com/slices/take_slice/63 and/or read up on the GAE files API (that might be easier than this but i have not used it for image upload yet)
good luck! cfh