MQTT hangs in pending states

Using a BG95-M3 with a MQTT.

If the carrier falters during MQTT open/connect the state that can be reported back from the module is +QMTCONN: 0,1. If I then attempt to use “at+qmtclose” the module with typically report back +QMTCONN: 0,4.

Note that by “carrier faltering”, I am experiencing a well know carrier connecting with a +COPS showing the network and mode=8 (LTE M1). Seconds later, +COPS: 0,0 is returned and killing the MQTT startup process, after another 90 seconds, the carrier is back with a valid +COPS response. But… MQTT is now stuck forcing a CFUN=1,1 and the problem starts all over again.

From the +QMTCONN: 0,4 state I find that the only way to recover, so that MQTT can be restarted in to reset the entire module. I have tried AT+CFUN=0, AT+CGACT=0,x and AT+QIDEACT=x to force the LTE radio or context to close, done of these work reliably.

Any suggestions on how to force MQTT to close following a network issue.