Indeed, bettas need a minimum of 2.5 gallons to live happy and healthy. It's also necessary that you get a heater so the temperature doesn't fluctuate through out the day. You should get one that's adjustable, not a preset heater unless the place you live has a steady temperature day and night.
Your fish might be suffering of lethargy because of the constant temperature changes, if the water gets to cold their metabolism slows down and they get that way. Or, maybe he's suffering of ammonia poisoning, because you really should be doing 100% water changes every 3-4 days, or a 25-50% every day for a 1 gallon. The bigger the tank, the less water changes you need to do, you can also get a little filter (an under gravel one maybe) for a 2.5 gallon tank.
So, the bigger the better for you and your fish!