basmistry
The simplest approach is to let Server A handle email for all users at both sites.
The 20 users at site A will connect locally via IMAPS, & the 10 users at site B will connect remotely via IMAPS.
There is a traffic penalty to this, but that's the easiest approach. It's no different to having 10 road warriers out in the field connecting to a main server (site A) on their notebooks & smartphones etc.
Another approach (although you say you don't want to do it, it is an effective answer) is to configure a second domain name for site B, maybe a derivation of your main domain name. Then have the users at site B use that domain name as their email address.
In server A you set the Delegate mail function so that all mail for domain B is sent to the SME Server B, this is done with a simple db command.
Obviously you configure both domains to point to server A for mail at least, done in external DNS records.