I had the same problem. The fix is to add a query parameter before the page anchor:
document.pdf?t=123456#page=10
Edge caches PDF positions by the base URL. Adding ?t=${Date.now()} makes each link unique, so Edge treats them as different resources and doesn't use the cached page position.
Important: The query parameter must come before the #page= anchor, not after it.
// Example implementation
const url = `${pdfUrl}?t=${Date.now()}#page=${pageNumber}`;
window.open(url, '_blank');
This workaround was mentioned in What can I do to change this Edge PDF frame behaviour without JavaScript (Firefox works OK)