Get a VPS (from e.g. Linode) and:
1). Install postfix (fantastically efficient, excellent documentation, mailing lists and security track record). Postfix will handle any mail setup you care to dream up.
2). Install dovecot (this is now the reference daemon for modern IMAP and POP on linux)
3). Install Spam Assassin and ClamAV for spam and anti-virus (they will do a good job but not as good as what you are used to with gmail)
4). Install Roundcube for webmail (currently the best looking floss web frontend for mail)
5). Install open dkim and get it to sign all your outgoing mail (make sure to add the relevant DKIM TXT records to your domains)
6). Add SPF records to all your domains
7). Make sure your server's IP has reverse dns setup.
8). DO NOT run your mail server off your home DSL line as the IP (even if static) will be in all sorts of block lists. Hence the suggestion to get yourself a VPS.
Once you have everything setup, the system will need very little maintenance apart from Spam Assassin and ClamAV.
Finally, you can get away with not having a secondary mx as the senders MTA will re-try periodically if your primary is down. However, if you want a secondary, you can outsource this to a number of third parties for not a lot of cost.
Enjoy, running your own mta can actually be quite fun