Hello - Has this just happened or is this a new heater or?? How old is the heater also ? Are you on well water? What you can do to help troubleshoot this is to open the pressure valve on the top side of the water heater (with the tube that goes down on the outside to the floor) Place a bucket under it to catch the water BE CAREFUL THIS IS HOT HOT WATER AND MAY SPLASH UP OUT OF THE PAIL. hold the valve open until water comes out (it will sputter a bit at first) wait a day and see if it is still full.
Normally water heaters will automatically expell the air from them through the water lines. I would check for leaks near or on the water heater. You either have air coming into the water line somehow or a weird problem I have yet to encounter. Please let me know what happens and if you need more help with this
Yes that is a distinct possibility, the thing that has me baffled is that you didnt mention any water leaking around the water heater. Its also a little odd that the water heater doesnt fill up. I would think with a leak in the tank it would leak (visibly) or something other than this. 18 years isn't a terrible age for a water heater but if you have high iron in your water its pretty good (that it lasted this long). Considering its age and what happened I would consider replacing the water heater (more cost effective than repairing it)
If you feel up to the task and have flexible lines to the heater - just for the sake of troubleshooting- you can disconnect the water heater and effectively "take it out of the loop" and bypass it to see if the air problem goes away. You may have an instance where the air is coming in on the main line and ends up going in the water heater due to how the pipes are run in the house. (the air (wanting to go up) finds its way into the heater because it is the first and easiest route it sees to go up) which would put the problem not in the heater but maybe the well or pressure tank ?