The January effect can be explained by the impact of taxes and various metrics used to gauge performance of money managers. Large cap and small cap stocks react differently to the January effect. There is a correlation between January and performance but no causation. If these other factors changed the January effect could disappear or move to another time of year.
There are limits to arbitrage. Little players can't really move prices and big players are the ones causing the effect.
I don't believe the market is efficient, especially short term. I believe that in the long term it is efficient-ish. Value strategies try to take advantage of mispricing from short term thinking but stocks can stay mispriced for a very long time.