Acontece que isso estava relacionado a ecryptfs e ter um diretório pessoal criptografado. O comportamento "aparentemente aleatório" foi desencadeado por ter uma sessão SSH ativa com o meu usuário logado. Enquanto logado, o cron era capaz de ler meu diretório pessoal porque ele foi montado e descriptografado. Enquanto desconectado, o script não está disponível. Obrigado por todas as sugestões úteis.