We have an AngularJS web app that loads PDF documents from the server and displays them within the page like this:
Have you tried creating your own pdf viewer?
There are pdf viewer components readily available where you can edit your pdf viewer(like add event listeners to buttons, position them, etc).
I remember building one on top of pdf.js in angular a long time ago. I am sure with pdf.js you can implement all the above-mentioned use cases.