Car is a 89 325i (while not a 5 series is a m20b25)

When i brought this car the temp gauge was always just over the 1\4 mark so naturally i thought thermostat was the issue so replaced that with no change so starting going thru the list. New coolant temp sensor, another instrument cluster, brown dme coolant sensor, also replaced water pump and viscous fan. Only thing i havent done is the radiator.

If the car is left to idle for awhile it warms to dead on the halfway mark and never moves until you start to drive(then it returns to the normal middle of 1\4 & 1\2 position).

Normal driving its between the 1\4 and 1\2 marks, thrashing it does tend make the temp increase a few notches but never goes beyond half.

Open to any ideas, im at a dead end and no clue if the gauge is correct or what.