What do you want Certbot to do if a deploy hook fails? It successfully renewed the certificate, it's not going to try the deployment again on subsequent runs. That's the behavior of Certbot and you will need to adapt your usage around it.
As indicated in the subject line, certbot should not hide the failure in tons of output, but report it visibly in the summary at the end. In the current implementation I have to run the deploy scripts on my own to not miss a deployment failure.
On the other hand, it's a bit confusing to think whether it should attempt to preserve a copy of the error output from those deploy-hook failures in order to redisplay it (I think probably no, because it could be voluminous, but some users may be mad that Certbot told them some of their deploy-hooks were failing but not why, even though this is more information than Certbot would give them today).