I would suggest using a 5-10 gallon tank instead of a 2.5 gallon. How often do you do water changes? With that little water the water quality is usually very unstable. Also I would at least use a sponge filter. Sponge filters are easily made.
Here is the thread showing my home-maid sponge filter with some info. How much sand is in the tank(inches). If there are trapped air pockets in the sand it will grow unhealthy bacteria that will create toxic gasses in the trapped airpockets and may also contribute to smell. What are you using for food? Maybe you are feeding excess food that is decaying.