SIM800l + Arduino Nano travando com 60% de memoria

O Arduino nano simplesmente trava ou não consegue acessar o servidor quanto o Sketch usa mais do que 60% da memória.

Estou usando a biblioteca "SIM800L.h" e TinyGPS++.h no meu projeto, o objetivo é obter a localização pelo GPS e enviar para o servidor.

Tudo funciona sem problema quando o o sketch é menor do que 60%, porém, ao aumentar o sketch para 62% ou mais, o modem começa a ter dificuldade para conectar ao servidor e quase sempre o Arduino fica travado.

A comunicação com o servidor é praticamente o código do exemplo:
HTTPS_GET_SoftSerial da biblioteca acima informada.

Segue resultado da compilação quando funciona:

O sketch usa 18566 bytes (60%) de espaço de armazenamento para programas. O máximo são 30720 bytes.
Variáveis globais usam 1102 bytes (53%) de memória dinâmica, deixando 946 bytes para variáveis locais. O máximo são 2048 bytes.

Segue resultado da compilação quando NÃO funciona:

O sketch usa 20776 bytes (67%) de espaço de armazenamento para programas. O máximo são 30720 bytes.
Variáveis globais usam 1317 bytes (64%) de memória dinâmica, deixando 731 bytes para variáveis locais. O máximo são 2048 bytes.

Ola,
A um tempo atrás tive um problema similar ao "misturar" dois códigos, a execução parava em certo ponto, mudar algumas coisa de ordem fazia funcionar, mas nem sempre. Finalmente conclui que poderia ser falta de RAM, mesmo restando 50% da ram.
A solução foi deixar tudo que foi possivel na flash, como os textos e constantes. Usando a macro F() ou outro meio.

Eu fiquei bem desconfiado também da memória, na verdade com esse calculo que o compilador faz. Na biblioteca do Modem tem uns Malloc, daí vai saber se eles não entram em conflito.

O próximo passo é testar com um Arduino com mais memória.

Fico grato pela resposta!