I recompiled without passenger (--with-http_ssl_module --with-http_gzip_static_module --with-cc-opt=-Wno-error) and to my surprise, the interrupted request issue has disappeared. This means that having the passenger module compiled into an application changes some aspect of timeouts for all requests, independent of whether you have turned the passenger directive on or not.
Wow... Now I understand why Phusion sells commercial versions of passenger that add support for timeout configuration parameters. Time to abandon Passenger.
I sort of suspected I wasn't having an nginx issue. ;)
Joe