Just having a layer of plastic film will cut your heat loss about in half. Insulating the sides of your tank will help.

Reducing evaporation from the top of the tank is important. Evaporating a pound of water causes a heat loss of over 1000btu. The evaporation of 10lbs of water will lower the temperature of a 160 gallon tank by about 1 degree F. A dry climate would facilitate evaporation.

Being in a greenhouse helps somewhat with the evaporation, but not completely. The water vapor condenses on the inside of the greenhouse walls, losing the heat to the outside.

Having insulation floating on top of the tank would be the best way to reduce evaporation, but stops the oxygen exchange with the air. Maybe covering most with insulation and have some bubbling to make up for oxygen loss.

Even with indirect sunlight, your greenhouse will heat up a little in the daytime. Too bad you do not have direct sunlight to really heat a greenhouse.

Bsfman mentioned thermal mass (heat capacity). Water has a high heat capacity - takes a lot of heat to raise its temperature and gives up the same heat when cooling down again. Water in black coated containers will absorb the heat in the day time, reducing overheating in the greenhouse and then when the temperature drops at night, the heat given off reduces how cold it gets.

Hope your fish are surviving.