I hope I'm not too late to jump in on this thread.
One common problem with water heaters is that the inlet pipe can rust and break. Typically the inlet pipe directs incoming cold water to the bottom of the tank, preventing it from reducing the temperature of the hot water at the top. When it breaks, the cold water is released into the top of the tank instead of the bottom. Then, when you're using water, the temperature of water at the top of the tank decreases more rapidly, because of this cold water mixing in. Since you're having issues with very low storage of hot water, this could be the problem. If you don't find sediment in the bottom of the tank, or that doesn't solve the problem, you may want to look into this.
This issue can be hard to identify. If you have it REALLY bad, then the entire dip tube has broken off and is laying in the tank. When the gas burner turns on you'll be able to hear it bouncing around, making a clunking sound. But that's rare. Normally it will be a little split in the tube wall, which is harder to identify. It might be worth replacing the dip tube before replacing the entire water heater, if you get to that point.