A skimmer and regular water changes will definitely help. Also, using some pure form of water (distilled, RO, RO/DI, etc.) for evap topoff and mixing up water changes.
Something else to watch out for is detritus accumulation. IMO decomposing detritus is one of the most common sources of excess nutrients in our tanks.
For example, if you have a course substrate, when you do water changes you may need to vacuum out any detritus that is collecting in there. Periodically blowing any crud out of the rockwork using a turkey baster or powerhead also helps prevent detritus build-up in the system.
Aside from controlling/reducing nutrient levels, a better variety of snails would help too. IME nerites are better at eating diatoms and film algaes and probably won't help with the hair algae. I've always found Large Turbo snails to be good for that...
HTH