What I personally do is forward my pop3 mail to gmail. However, I just use the G2 Email client mainly because I don't need to have my mail delivered immediately (every 15 minutes is fine for me). That said, I do also have my pop3 email account set up in my G2 in addition to the gmail account.
This allows me to reply to the inbound gmail account but using my pop3 account for the "Send As", so the people I am replying to have no idea that my email is coming in through gmail. I do have to be careful though to change my From address, otherwise my "cover" is blown.
BUT, depending on how your zoho mail works when you forward emails (does it keep the original on the server or delete it?), you can also set your G2 email to not pull your zoho mail automatically (set it to manual) so that when you NEED to reply to the original email instead of from your gmail with the From address changed, you can do so by initiating a poll from your G2.
You are right, maybe this is overly complex and could turn out confusing.
That said, let's go back to the original setup with a question: is the email account set up to download attachments always or just on wi-fi, and is there an attachment size limit? I know these are probably the first things you checked but thought I'd eliminate the obvious since you didn't really mention if you had looked at those settings. But while that may solve your attachment issue, it wouldn't solve the instant email issue. The only way I know around that is to use IMAP (with gmail as an intermediary between your zoho account and your phone) with the Gmail client.
In summary: set zoho to forward to a new gmail account, set up the Gmail app on your phone to point at the new gmail account. Test send an email with an attachment, see if it's instant and if you get the attachment. If so, reply to that email and change the Reply From to your zoho address*.
*I'm not 100% you can do that in the Gmail app, however I've also taken an extra step on my gmail account to allow aliases and for sent mail to go through my ISP's outbound server and not gmail's outbound server. If the Gmail app allows that also, you are golden. The work around would be to use the Gmail app to receive mail (assuming that attachments work and email is instant) and the G2 Email app to send mail (by pulling it down only when you need to reply to something). Not very elegant I'm afraid -- hopefully someone else has a better solution.