If you are looking for improvements to your cooling system, consider getting some cooling system additive (Water Wetter, Super Coolant).
You will want to research comparison testing to find which one will best address the area you are looking at cooling best (engine idle temps in traffic, cruising temps, high rpm for extended times, etc...).
In my 2000 Silverado 2500 6.0 I used Hyper-Lube Super Coolant from Wal-Mart as it targeted my engine idle temps keeping them down, which is where my truck had a problem spiking temps up in the 215-223* range, which caused my valve seals to get hottest and leak (aka burning oil). After adding the Hyper-Lube Super Coolant my truck now idles around 198-210* (on 90-95* days) and that has drastically cut down on the oil burning/consumption.
Of course a better fan will help, but if you aren't needing that much help, a $7-20 bottle of additive may help.