I bought a yoyo loach and he took care of the biggest of the snails, but I still had literally thousands of tiny ones. I tried the lettuce thing without luck.
This was my last resort secret weapon - it was a pain in the rear to do and was probably extremely stupid, but it worked.
I took the business end of my gravel cleaner off and used the tube like a vacuum cleaner on any visible snails. I kept one hand on the tube's exit ready to stop the thing in case any fish got too curious. I had to do it every night (because snails hide during the day) for a week, but I have significantly less snails now than before.
I also had to remove some plants to wash off any snail eggs that were attached.