Sem ver o log de erros de inicialização, seria quase impossível diagnosticar.
Se eu tivesse que arriscar um palpite, parece ser ulimit
em falta, o processo provavelmente é incapaz de alocar a memória que precisa de um cron, mas não é limitado quando executado via shell interativo. O log do MySQL confirmaria isso, embora de forma não descritiva.
Além disso, não reinvente a roda com scripts de meia barra, apenas use um aplicativo de monitoramento reconhecido como monit