Yes, it's redundant. "One reason may be" or "One possible reason is" are logical; they each have only one layer of uncertainty. "One possible reason may be" superimposes one layer of uncertainty over another and the result is too mushy and squishy to be logical. But all these expressions are grammatical, and they're all used commonly.
"May" is very often injected into a sentence redundantly. You hear it all the time on US news broadcasts, for example. It's possibly because some people equate certainty with arrogance or impoliteness, and so they over-compensate. A single layer of uncertainty is appropriate; no more than that. :)