Hi Mike,
I would like to know more about the problem.
From your description,
This works for restoring from most network problems, but this does not restore the connection after a “Error in processing RAT. Token 11” log entry.
Does that mean the RAT is always wrong even after RF off/on the modem when “Error in processing RAT. Token 11” is observed?
It looks like you are using Cellular_RegisterUrcNetworkRegistrationEventCallback API for network registration status.
Print the pInputLine in Cellular_CommonUrcProcessCreg can also provide more information for us.
If you want to try power cycle the cellular modem, you can use Cellular_Cleanup and setupCellular(). Comm interface will be closed and opened by cellular library. The implementation of comm interface should control the power of cellular modem in open and close function.