Just to confirm, I tested two XBees as follows and chat works both ways just fine. With the coordinator transmitting in broadcast mode (the default), sending too much data too fast can bog things down (see the product manual for an explanation of the evils of broadcasts). Throughput can get choppy but eventually will catch up as long as the buffer hasn't been completely overrun. Setting the coordinator's DH and DL to the router's address avoids this.
- Load the ZigBee Coordinator AT firmware (20A7) in one and ZigBee Router AT firmware (22A7) in the other.
- Restore both modules to factory default settings.
- Set the PAN ID on both modules. This was necessary so as not to interfere with another XBee ZB network I have running. With the default setting (PAN ID 0), the router will join any available network.