Have you changed the coolant recently? You could have an air pocket in the system. You could also have a malfunctioning heater valve. It blocks the flow of water when heat is not called for. Also, the damper door, damper vacuum motor, electronic controller, etc. could be malfunctioning. There's a lot of stuff to check. I wish I could be more help, but it's hard without being there. You just have to start eliminating problems until you find it.