I tried this and got the same results as you, this seems to be a bug. What is interesting is that the following works
So the endnote reference is found using the footnote reference. However, if you just try to find endnote using ~F it fails, it works only in this combination. Also the pattern endnote followed by closing quote is found using ~U~} so looks like a bug to me.
Thanks Jedi, but I see a problem in your method. You are looking for every endnote reference and changing it to a temp condition. But that wipes out all the endnotes. But this method seems to work.
Change: xyz$1 Now all endnotes start with xyz, whether or not the endnote is preceeded by an closing quote but the end note number remains.
Change: $1~< Now all closing quotes with the temp condition after have a thin space in between the quote and the endnote.
This however leaves any endnote reference number that does not follow a closing quote with the xyz temp condition. Since this temp condition does not appear anywhere else in the text (something weirder than xyz should be used) you: