I suspect the issue has to do with saving/loading annotations from the server.
When WebViewer sends requests to the server, it will append a document id in the query so the server can uniquely identity documents (and keep annotation xfdf files separate).
To workaround the problem, before loading a new document with loadDocument, set a new document ID.
For example:
if(myWebViewer.selectedType === "html5"){
myWebViewer.getInstance().doc_id = "new_document_id";
}
myWebViewer.loadDocument($('#documentURL').val());
It is then up to the server script to respect the document ID and return the correct XFDF annotation data to the client.