The fact you say the heater is luke warm is a fairly sure way of telling the coolant is not getting up to temp - I would start it up and take it for a drive until the temp needle just starts to move up, keep driving it gently until the needle moves say another 1mm on the dial then pop the bonnet and feel the top radiator hose - it should be stone cold, if there is a hint of warmth to it then the stat has opened too early or is jammed open.
You should also be able to feel around the thermostat itself - if the bypass pipe (opposite main rad hose) is cool and the pipe that exists at a 45° angle is cool/warm and the top rad hose is warm then it sounds like it is jammed fully open and closed the bypass - no flow in the bypass from startup would be a big indicator of a jammed stat.
Good news is being an inline setup they are quite easy to change - buy OEM or genuine boxed - I don't know what it is about stats but aftermarket stats always seem to be junk!
I suspect by this point you have looked down the airlock issue, but if you have driven it, let it sit and driven it and the header tank is up to level then I suspect you don't.