I asked a question regarding email delays a few months ago, and I think I found a workaround. I changed our email from "email@example.com" to "firstname.lastname@example.org", and it seems to work instantly again.
After reading some articles, I believe this could be due to some form of greylisting, though some servers might call it something else -- if a server like yahoo or gmail receive email from a server that it is not used to receiving email from, then sometimes the delay occurs. But a name such as yahoo, gmail, which requires a user to sign up manually -- this delay can be avoided.
My question is this: does anyone know more about this issue -- especially since it would be nice to send an email from our own site, instead of needing to use a whitelisted server?