Two ESP8266 not acive at the same time!

The requirement is the MQTT client ID be unique. This does not mean changing the WiFi MAC address. Each WiFi MAC address is already supposed to be globally unique so appending the MAC to the client ID makes the client ID unique.

Changing the clientID manually should also work. You may have to turn on verbose debug on the MQTT broker/server and/or capture packets with wireshark to find out what is happening.

You can create unique client IDs like this but I do not have time to test this code so beware.

String mqttClientID;
mqttClientID = "ESP-" + WiFi.macAddress();
mqttClient.connect(mqttClientID.c_str(),...);