If your heater is adjustable maybe turn it up a little bit. Small tanks get have severe alterations in temperature and can cause shock.
You should feed him twice every day, 2-3 good brand pellets and/or a live/frozen food for nutrients and protein.
If you can see white regrowth on your betta's fins, then he's recovering, but until then it may be best to try a tsp per gallon of aq salt with 100% daily changes. But this shouldn't take more than 3 days (absolutely no more than 10, as aq salt can damage the labrynth organ they use to breathe)
I won't tell you your tank is too small, but possibly another 25% change won't hurt.
If you don't have a water testing kit, you should get one. Prime is a good water conditioner, but there may be heavy metals or something else wrong with your water and knowing what's in it helps a lot.
When you do your water changes, do you take him out, or leave him in? Do you make sure the temperatures are within a degree of each other before replacing the water or the fish?