First, are you using G.729 to avoid high data usage charges or a low cap? Otherwise, there must be some technical problem, because 256 kbps is enough for two concurrent G.711 calls!
I suspect that there may be a problem with data buffering in the router or modem, or perhaps a timing issue. Test each end separately, using a provider that supports G.729 (and check Call Status to confirm that it is being used). A free Callcentric account should suffice for this purpose, calling in via SIPBroker or iNum, or calling out to a toll-free via SIPBroker.
If both ends are ok when tested separately, try calling via Callcentric, rather than directly between the devices.