Alex,
I shall attempt to address your questions:
Q: Why was the "reroute" functionality not included in the new Exchange?
A: The new functionality was deemed all that was required. There was no Recipient Update Service in Exchange 5.5, so it would have been difficult to manually add secondary addresses. In Exchange 2000/2003, all you have to do is configure a recipient policy. Optionally, it is relatively easy to write a managed SMTP event sink to do this.
Q: Why do you recommend not using forward all email to smart host?
A: I do recommend it if that's what your configuration requires, but use an SMTP connector to do so. Do not configure this on the SMTP Virtual Server. You may be able to get away with this only if you have just a single Exchange server.
Q: Is there a KB article or other web page that shows how to customize the error messages that the Exchange SMTP service generates?
A: SMTP error messages can be customized, although they generally have accurate descriptions already. However, the Exchange store potentially will override the SMTP error message anyway (so you get an error message that is localized to your own language). Furthermore, there is also the potential that the error message was generated while talking to a remote system and the error message there is not as complete. In any case, check out KB284204. There are varying ways to accomplish NDR/DSN customization, depending on exactly which you would need to do, including an SMTP DSN sink, a store event, or a third party solution. You should also check out Jason's blog topic for size limit error customization at http://blogs.msdn.com/exchange/archive/2004/04/20/117024.aspx.
Hope this helps!