P.S. I don't believe your claim that it forgot changesets. Could it be that it simply forgot adding files, and that it did so because you already had the files in the sandbox, so that the merging failed?
It's more weird actually, it actively forgot some changes in some files but some other changes in the /same/ files did get merged.
I see. Provided there is somebody willing to work on this, it might be interesting to reproduce it.
P.P.S. Are you sure you have to re-merge when somebody commits something unrelated to the branch? Or just when somebody else merges as well?
Perhaps only the latter, I'm not sure actually. (but it can also happen that the "unrelated" commit modifies some files you were merging changes in...)
That should not be a problem, unless the to-be-merged changes directly conflict. Just svn-update, then try committing again.
It's actually also possible to recover from overlapping merges also: just re-run svnmerge with --record-only (-M); this assumes nobody else has merged the very same changes concurrently.