Have you tried Imedeen supplements. They're pricey but after a month or two you can really see a difference. Also, try eating more of the so called 'superfoods' such as salmon, blueberries also drinking loads of water etc...
When I make an effort to do the above and when I can afford Imedeen, I can really see an improvement.
Long term - use the oil cleansing method to get rid of small spots (however it sometimes gets worse before it gets better!) - see the MASSIVE oil cleansing thread here on MN!
Short term - try using a face moisturiser with self tan included every day - I've just posted on another thread about Olay Complete Care Everyday Sunshine - I'm using the day and night versions. Skin has never looked better - the small amount of tan makes skin look glowy, healthy and 'rested'. It's the fastest way to looking healthy - especially covers up dark undereye circles and make eyes look brighter and whiter!