Hi there, the 4 gallon tank you have is too small for even one goldfish, and you have 4 in there. That is the problem. Cycling a 4 gallon with 4 goldfish in there is just not possible. There will always be ammonia in there even if you have a working filter, because the tank is undersized. You need a tank at least 10x larger for these fish.
As for your 7 guppies, how big is the tank?
What filter system is it in there?
Yes, you need a heater for the tank. As you have noticed, they are very unhappy. When tropical fish are in cold water, they become inactive and eventually they will die. I suggest you get a proper heater as soon as possible.
If you haven't cycled the tank before getting those 7 guppies, what you must do is to keep up the partial water change every day to keep ammonia low. A 50% water change every day might be needed until your tank can be cycled. Get SeaChem Prime as water conditioner for every partial water change, because Prime can detoxify ammonia up to 48 hours. It should minimize the ammonia damage to your fish.
In the case for your guppies, nothing will work for long if your tank is also undersized. You need at least a 10 gallon (or almost 40L) tank for 7 guppies. It must be heated, filtered. Yes, it is the best to cycle the tank before adding the fish, but since you already have the fish it is too late for fishless cycling. You need to keep up the partial water change I suggested above to keep fish live through the fish-in cycle.