Bom dia GABRIEL DE JESUS FILHO.
Após pesquisas, acabei conseguindo encontrar algumas coisas.
"A chave estrangeira do relacionamento deve terminar com '_id', e a chave primária do outro lado do relacionamento é somente 'id'."
Depois que vi essa regra na documentação com calma, apliquei ao meu projeto, alterando as tabelas e código e funcionou.
Ainda não apliquei de forma diferente, mas aprendi que tem como você dizer pro eloquent, que seu campo é diferente, informando em belongsTo os parametros. Fica mais ou menos assim:
return $this->belongsTo('estoque\Categoria', 'idCategoria', 'codigo');
sendo segundo e terceiro parâmetro, o campo na tabela produto, e o campo na tabela categoria.
segundo a documentação, funciona, mas ainda não testei dessa forma.
Existem situações, em que sua classe é composta por duas palavras, por exemplo "unidadeMedida", que mesmo seguindo a regra de ter "_id" , é interessante por o segundo parametro, ficando assim:
return $this->belongsTo('estoque\UnidadeMedida', 'unidadeMedida_id');
Espero que essa resposta ajude outras pessoas também!