Could someone explain the main benefits of having internal DNS entries?
That's a very broad question, and depends upon your requirements and IT infrastructure.
In a large enterprise it could be that a request from a user in one department would have to transit multiple routers and/or firewalls to access the public (NATed) IP of a web server that's sitting in a data room a few feet away from them. In other words, it could represent an inefficient use of network resources, and so it would be more desirable to have internal users' requests go to the internal IP of the server.
Another case could be that internal users are allocated a specific web server (or cluster) that may serve the same content as server(s) on the public IP for the same hostname.
Yet another case could be that internal users would put an unacceptable load on the router(s)/firewall(s) that provide the NAT between the internal and external addresses, and having them connect directly to the internal IP of the server would alleviate that load.
In another case the configuration of the firewall (and/or router) may not allow traffic from the internal user IPs to the external IP of the server in question, and so the users need to be directed to the internal IP of the server.
From what you describe, your firewall does allow internal users to access the external IP address(es) of your server. Generally speaking, if your internal users do not represent a significant load (relative to the load of external users and the capabilities of your networking equipment), it seems like there is no practical reason for you to maintain separate DNS entries for all of your public hostnames.
However, who implemented your current configuration? They might have had a specific reason for doing so, which may render my last paragraph moot. I would need more information about your network environment and loads before I could render a decent opinion.