Shrimp live in colonies, so a singleton cherry shrimp would be a bit sad... I wouldn't, especially with a betta that's likely to eat and/or terrify the shrimp. Even amano shrimp that some keep alone are suggested to be in groups of six or more as they're social, and that would be a crowd in a 5g, they're pretty large shrimp. Also bear in mind the size of a shrimp's stomach... a single cherry shrimp isn't going to be able to eat a whole betta pellet in one go! So there will still be a mess to clean.
There are some shrimp that are fine as singletons, like bamboo shrimp, but they're huge and not suitable for a 5g really! Also not good clean up crew.
If you go for a snail, a mystery snail would work. Hermaphrodites, but I
think they still need another in order to fertilise eggs - but I could be wrong on that, so you'd need to do your own research! If they did lay eggs, it's easy to prevent them hatching since they lay them in a big bunch above the water line, so easy to spot and remove, unlike bladder or ramshorn snails that dot their eggs all over plant leaves and things so you wouldn't always find them all.
Nerite snails are the most popular for this. They're excellent algae eaters, and cannot reproduce in fresh water, so no babies appearing. But, the females will usually still lay bright white eggs all over the tank and decor, which a lot of people (like me) hate, because it can look ugly and the eggs are hard to remove. And you won't know whether the snail is male or female until eggs begin appearing...
For leftover food, the best cleaner crew is you! And a turkey baster. Seriously. Watch the betta as you feed him, and any uneaten food, suck it up with the turkey baster to remove it straight away. Left over fish food breaks down and produces ammonia, so leaving uneaten food and hoping the snail or shrimp takes care of it is risky. turkey baster is quick and easy, and means you don't have to get the gravel vac out every time you feed.