Plus, solo mining is just more financially risky. Unless you have a couple percentage points of the total hashrate, it just doesn't make financial sense.
Even then, large miners will negotiate deals with the pools for a lower % take of the fees. Those fees effectively pay the pool for their own costs so that the miner doesn't have to worry about the rest.
So, the only real centralization is with the pools and as we've already seen in the past [1], as soon as a pool gets to 51%, miners switch to another pool (which is quite easy and not a lot of effort).