Mais do que provável que não seja seu problema, mas vale a pena mencionar - Se o seu / etc / localtime mudar após o crond ser carregado, ele continuará preso no fuso horário anterior. Simplesmente reinicie / recarregue o crond, e ele selecionará essa mudança.
Outra 'pegadinha' é que o cron irá aderir à variável de ambiente TZ. Isso pode ser definido in-line em um crontab, afetando quaisquer linhas que o seguem, mas parece mais provável que o TZ esteja sendo configurado no ambiente que carrega o crond.
Eu apenas tentei algumas variações (ajustando os campos hr / min) no seguinte para determinar se / quando esses dois trabalhos seriam executados. A saída que fica cheia em /tmp/tzout.localtime também deve lhe dar algumas dicas sobre se $ TZ está de alguma forma sendo configurado no ambiente que está carregando crond ou não.
* * * * * echo $TZ 'date' >> /tmp/tzout.localtime
TZ=GMT
* * * * * echo $TZ 'date' >> /tmp/tzout.gmt
Embora eu não afirme saber exatamente onde está o seu problema, espero que isso esclareça um pouco a solução!