Yes, I'd expect the charset definition in content type header even if the content is gzipped.
Reading the RFC2616, there is no mutually excludent rule that prohibits the charset to be declared after gzip encoding.
Unfortunately, I'm using nginx 1.0.14 and cannot apply patches to it without having it gone through extensive testing and benchmarks again, we're changing a very important section of our infrastructure and changes like these are always a hard work.
I haven't had the time to check if this patch is applied to the trunk, or the latest stable version of nginx. If the charset module is already with that patch on 1.2 branch then it will be much easier to start the 1.2.X branch testing and benchmarking by our capacity planning and testing team to homologate that version for our infrastructure.
Thank you.