Email relies on a working DNS, as you have discovered. In order for it to work correctly, you need to have both a forward and reverse maping.
In your DNS configuration folder, there should be several files. Some of these files will point to localhost, which are used to provide root hints, or in other words are used to help resolve unknown addresses. Two of the files will define a forward and reverse mapping.
For example, here are two lines from my server's mapping for a printer with a static IP. Note, there are not public IP addresses, nor are they publically addressable.
Forward mapping: magicolor IN A 192.168.0.3
Reverse mapping: 3 IN PTR magicolor.debian.lan.
The first line defines the name (magicolor) and points this to the lan IP. the second line takes the address and is a POINTER to the name. It sounds like this is what is missing.
Both entries need to be in the SOA or start of authority record for the LAN.
For my server, these definitions look like this:
IN SOA server.debian.lan. admin.debian.lan. (... with the definitions above going here in a () block.
Two other important points. One, the final '.' is important to define the FQDN (fully qualified domain name). Two, in these files, the column in which entries appear and white space are important!