Platies! They are my little miracle workers. I hear ottos can be difficult as they are often wild caught and never adapt to aquarium life. Then there is the whole issue that many of them wont eat manufactured foods so you have to be 100% sure your tank can create enough algae to sustain the fish. I also hear they like to be kept in pairs or groups of three. If you opt for ottos make sure your aquarium is fully mature (at least a few months old) and make sure your cycle is stable.
The best preventor of algae however, is the owner not a fish. If you have a really bad problem it means something is wrong with your tank. How much light do you have (in watts?), Is it a florescent or incandescent? How far is it from the water surface? What's the kelvin temp of the light? How long do you leave the light on? What kind of plants do you have in the tank? Ferts?
Fast growing stem plants (anacharis, hornwort) can help too as I hear they can out-compete algae for nutrients. Floating plants are notorious fo rthis as well (duckweed, frogbit, water lettuce). If your problem is too much light, floaters can further help by diluting the amount of light that goes through. Hit two birds with one stone.
I had a really bad algae problem in my 10 gal. If you look closely in this pic
you can see it all over the rocks, wood, and substrate. I solved it with a blackout. I basically gave up on the planted tank and left all the lights off. The algae went away. I added platies, and decided to go for it again. This time I also raised the light fixture several inches higher. Never had a problem with algae since. I know platies eat it because I still had a bunch left on my driftwood but the next day it was mostly gone and the platies were looking plump lol.