It looks like this has been covered, but just to relay my experience (pun intended...), if you're using an external mail service, it is a good idea to use a local spooler (ie postfix) that is then configured to relay through whatever service you're using. Otherwise you can definitely see performance issues when posts are made to topics with lots of followers.
Nice writeup. That's about all I do to secure my systems, as well. I recently started running denyhosts and it seems to work well.
One other comment: there's no reason to make the username obvious, either. I use KeePass' password generator to generate my login names when I really, really care. Pretty much nobody is going to be trying to log in as "gT1JKouF", for example.
I have played with Amazon's CloudFront and PageSpeed. Both are "okay", but in my opinion not necessary.
My site, at least, utilizes the browser cache very well. If you're using the browser cache, then the CDN is irrelevant except for the first, uncached hit. In my opinion, it added more complexity that wasn't really gaining me anything.
PageSpeed is similar: more complexity that wasn't really gaining me much. It's a neat concept and there are probably sites where it would genuinely be useful, but my IPB forum isn't one of them. You should try it and determine that for yourself, of course.
I'm not sure if this is the right place for this, but I have a strange issue with Safari. Basically, when I browse some threads on my forum, I get the "With x checked posts" popup. I am not using a moderator account. It doesn't happen consistently, but it happens a lot. For example, this link triggers the behavior maybe 50% of the time:
Other than making things a little bit more complex, correct, you generally are not going to hurt anything by using a CDN. I really recommend that you understand caching as it relates to HTTP protocol before introducing a CDN to the picture. As I tried to mention above, there are several layers of caches that exist. The best and fastest cache is the browser cache, and in general, IPB does a great job of utilizing it. This makes a CDN less likely to be useful.