That would seem reasonable, but it doesn't explain the graphs showing No Charging during the failure. You can see the Boron Sourced the Solar Panel for the daytime....it just didn't charge the Li-Po.
On the other hand, if the Panel was producing "close" to the actual demand during the Cellular Failure (x? mW for 3G), then you might have an easy explanation.
I assume the fix would be Manual Mode with a :
if (waitFor(Particle.connected, 60000))
If it doesn't connect within 1 minute, it's time to go to Sleep, EN Pin Shutdown, or at-least stop searching for a while.
On a side note: Are you positive those Boron's are actually getting into Sleep Mode?
I ask only because burning through >20% SOC overnight, every night, seems excessive for a Sleeping Boron.
The LTE (not sure about 3G) Stop Sleep mode is ~ 5mW .
Assuming:
12 hours of darkness = 60 mWh
2,000 mAh Li-Po = 7,400 mWh
That 60 mWh is less than 1% SOC consumed overnight for Sleeping.
I don't know your duty-cycle, but it appears your Borons aren't getting much sleep