At this point it's in every miner's interest to require the smallest possible transaction fee. They gain nothing by processing no-fee transactions, and they lose money by requiring a higher fee than anyone is paying (besides zero transaction fee payments.)
They gain by making bitcoin more attractive which makes it more valuable. I'm sure that fee-free transactions increases the price more than it costs to send a few extra bytes of data.