Após alguns testes observei o seguinte (unit ACBrBoletoW_Itau_API) :
1- procedure GeraDadoBoleto: No finally comentei a linha LJsonDados.Free; pois quando efetuava o Free, o objeto AJson também era destruído;
2- procedure GerarData(AJson: TACBrJSONObject): No finally comentei a linha LJsonDados.Free; pois quando efetuava o Free, o objeto AJson também era destruído;
3- procedure RequisicaoJson: No finally comentei a linha LJson.Free; pois quando efetuava o Free, a variável FPDadosMsg ficava vazia.
Anexei a Unit com a minha modificação (de modo grosseiro) mas da forma que funcionou aqui o registro do Boleto via API do Itaú.
@Allan Hilário @Juliomar Marchetti se puderem efetuar os testes, reportem aqui por favor.
ACBrBoletoW_Itau_API.pas