Is there a way to Join or trim surfaces without merging the edges?

My guess: this merging behaviour is implemented somewhere very deep in the core - and will not change.
Therefor I spread more ideas for workarounds:

just draw the points in question and pull them to the surface before you trim it.
As far as I know, trim will also pull the curve.

_dupBoarder (or _dupEdge)
_showEnds (This will show the points in question !!!)
… snap to point & knot (both should show as hint)

it also should be possible to find those positions / points by script:

looks like
does the job - but I am always a bit lost to fully understand the different continuities documented here.
If this does not work you may need to address one of the bigger brains at mcneel.

kind regards -tom