Well, a 3 isn't terrible, it's on the small side and a bit more difficult to safely heat and care for, but a 5 is even better (bigger is better in the fishie world!).
~As for the tank cycle starting over, this can happen when a harsh med is used and the bacteria is wipped out, or chlorine, soap or other harsh disinfectant comes in contact, or a filter is completly changed. You say you changed the filter but not the media. This confuses me as the media should be changed, not the filter. You can keep some of the white mesh and float it i the tank for a bit when you change the media, or even place it in with the new filter in order to help transfer some of the bacteria. However, the entire surface of the tank (inside) is covered in beneficial bacteria as well, so there should have been some remaining.
~How much/often and what do you feed him? Nitrates are usually due to over feeding, especially with yellow water (the nitraban is yellow, but should quicklly disperse, not tint the water). I don't know what you use but I can say that flakes are very messy and not recomended, freeze dired foods and frozen foods (rehyrate f-dried first) are cleaner, as are pellets. Try cutting back on feeding too, perhaps every other day, once a day.
~For general maintenance it's recommended to do a 25-30 percent change (gravel vac) once a week, and a filter media change about once a month. How bad is your water? Fish these days are generally very tolerant to varying water types, and if it's not drastically bad they should be fine. Mine is very hard, but my fish have had no issues. You should be fine with your tap water and a good water conditioner.
~Bottled is not generally recomended as it's had many vitamins and minerals removed, ones that are nesscesary for a healthy fish (like calcium).
~As for the white spot, is it mushy? Cottony? Flaky? Mushy or cottony could be a fungus, flaky could be a slime coat illness.
~Since his tank is having water quality issues, I'd recommend a 30-50 percent water change (over 50 can stress/shock him), try upping his temp to around 82-84 (induces a slight fever, nt to mention makes him feel better, it can help kill bacteria, virises and parasites on his surface and in the tank) and add a little freshwater aquarium salt (can also help kill bacteria, parasites and viruses on his surface and the tanks, and will help prevent secondary infections and balance electrolytes).
Best of Luck!