Good questions!
I believe that IoT transactions have to happen at zero-fee, but not necessarily at zero-cost. It just imply that the devices themselves can transact freely.
I strongly believe that the EOS proposition (tokenize the network ressources as an asset) creates the exact context required for smart devices to interoperate with themselves and humans. You rent or buy network ressources and monetize your IoT network with an appropriate strategy other than tx fees.
As part of the ecosystem, your devices also have access (can transact with) any EOS sub-chains with high performance, no scaling issue (parallel processing) and most of all, they are trustable, easy to program and maintain if their operating instructions are hosted in smart contracts on the blockchain.
If you consider that IoT devices will soon run stripped VM and participate in networks as computers, then IOTA lose it's appeal as a real-world solution. The Tangle is a complicated paradigm and, IMHO, is short lived if we consider the computing power eventually available for smart devices.
I am not an IoT expert and welcome other views. I hope this comment will help to bring more info on the IOTA value proposition.
RE: How will IOTA become a reality without fees?