Well when you turn on the heater it is sucking all the heat from the engine and turning it off allows the engine to heat up the antifreeze again. Usually this is a thermostat problem but you have changed it which is strange that it is still happening. Are you sure you have the correct temperature thermostat in the car, you may have to go to a higher one to solve your problem. If it was the heater core the engine temperature would not fall. Everything you describe indicates that the engine is not making enough heat to have the heater running and the heat lost through the radiator. You could test this out by putting a piece of cardboard in front of the radiator and see if that solves the problem. The reduction of air should make the engine run hotter. If this works it's time for a higher temperature thermostat.
I've got to agree with Robert and John: you could have a defective (or installed backwards) thermostat.
Test it in a pot of water on the stove, with a thermometer: you should see it open as the water heats up, and close as the water cools down.
Sounds like another bad thermostat or it is in backwards.
its definitely not in backwards. I will try both of your suggested tests. Thanks
When I let me car warm up to running temp and then turn on the blower for heat it initially blows hot air but then cools to just warm/cool air. The temp gauge also drops to half of running temp. If i turn the blower off the temp gauge rises and the process repeats when I turn the blower on. I changed the thermostat but had no changes. Could this be the heater core? Ive never had the coolant system flushed either. Thoughts?