Cooling problems

If it takes 20 min to overheat at idle, that isn’t a very big problem (at idle). if it really takes that long to overheat just at idle, your fan is probably working pretty well.

What are you calling overheating, a certain temp or cap venting?

I know this is probably stupid, but is the fan pushing the right direction? Sound like your biggest problem is driving, which is likely an airflow problem, as said above.