Yes, you can have any role on one or more servers - just install it through the Exchange interface. Exchange 2007 is designed to be modular, so if you want two HT servers, just put the role on two, and if you want 3 mailbox servers, you just install the role on them. There is no issue with having two Hub Transport servers on a network.
The approach you mention is plausible - and one I highly recommend. Keeping your mass-mailing software away from your main IP used for sending and receiving regular email is always a good approach, since you can protect yourself as much as you like, but can guarantee with mass-mails that somehow you will be blacklisted (and of course, if it is unsolicited, you will instantly get blacklisted, but I hope it isn't spam!). This way, regular mail still works and it is just mass-mailing which will be down.
Don't forget: if your new Exchange 2007 server is powerful enough, you could always virtualise the second HT / CAS role in a virtual machine on that same hardware, rather than purchase more hardware when its power really won't be used to the full extent that it could be. If all it is doing is CAS and a bit of HT for mass-mailing, that's not much load or RAM required, so there's no reason why it couldn't be virtualised.
-Matt