I noticed your 2.5 gallon tank is your hospital tank. What are you keeping the filter alive with? Do you currently have a fish in there? If it has been fishless for a long period of time the agent you are using to feed it may be the problem. I just keep an extra filter in one of my main tanks so I can set up a hospital tank when I need one rather than try to keep an empty tank running all the time. As far as the 20 gallon goes, I think the gravel vacuuming may help cut down on the odor some, but what kind of filter are you using? Also do you have a brown algae problem? I would also do at least a 50% water change (a big job I know, but I consider that a minimum for this kind of problem) (Do the gravel vacuuming at the same time as it may stir up quite a bit of debris if it hasn't been done for a while)
Hope this helps.
Rose
