We just had a new system installed and our installer and their engineers said the same thing. I told them if that is the case then they owe me 2 more MGB's. So now I have 2 MGB's at the main office, one for for SIP TRUNKS, the other for Teleworker and acting as the web proxy. Then 2 in the backup office with the same configuration. Only thing they ran into is issues with the trunks on the 2 MGB's in the same cluster. Once they were separated all worked fine.
What issues did they run into? The only reason to spread out these services is redundancy and load balancing.
How many TW users do you have? How many channel licenses for the trunks? If they're low traffic then you can absolutely put them on the same box. A cluster of 2 will at least provide some high availability though.