Why do services like ATMs and hotels have so many hidden fees, when the free market should encourage moderating competition?

Maybe this explains why there isn’t a mobile phone provider in the US offering unlimited service, which otherwise seems like a no-brainer to me.