After tracing logs, it seems like the ppp daemon fails at
^MScript /usr/sbin/chat -v -t 90 -f /etc/ppp/peers/gsm_chat finished (pid 405), status = 0x7
Increasing the TIMEOUT in gsm_chat from 120 to 240 solved my problem, AFAICT.