Ramakrishnan, many thanks for your bug report. I came across the same problem today, but with "sudo -i -u xxx" and under XFCE4, not Gnome. So I just used your solution - login via VT.
Interestingly, after using gpg once from the VT (and the gpg-agent process was still running after logging out from the VT, not from within X11), gpg worked also in the sudo session under X11. Btw, Dan, I don't believe, that this setup is so unusual - or I'm unusual :~)