Why can't masters talk to each other in a I2C bus?
A master starts a transaction by outputting the clock signal and the slave address.
A slave starts a transaction when it detects a clock signal and its own slave address.

Only one device can control the clock. Therefore, an I²C transaction always must be between a master and a slave.

It is possible for multiple devices to talk to each other while initiating transactions on their own, but this requires that they stay in slave mode while idle and listening, and switching to master mode only when they want to start a transaction.