Hi. If you have a viscous fan and you can stop it with a newspaper then you need a new one.Long drives cool air, short drives overheating.In the UK we can get a fan for about £40. You may need to bleed the air from your engine this is how I did mine on a 320i -
Heater controls set to hot
Header cap off
Keep squeezing all water pipes watching for air bubbles
Top up coolant as required
When satisfied no air put header cap back on
Release bleed valve on thermostat housing and check that no air and only coolant is coming out .