You cannot really use Move Pat for some of the reasons that you mentioned but also not all lines are curvilinear and Tangential at all nodes - if you get a Right angle corner for example a Move is not going to work in most scenarios
What you are asking for is really an Offset Move I guess where all nodes of the source line are recomputed to an offset location but the line and number of nodes stays the same - challenge is if the source line contains Vertical Curves or Spirals then you cannot do this without chording the line because an offset Spiral or an Offset Vertical Curve where the Target destination is shorter or longer than the source will just not work - but for a 3D Linestring with only Chords and Nodes this would be possible, and it would also be possible to chord a selected line if it has Spirals or Vertical Curves in it.
There would also have to include either a hard coded Tolerance for this or a modicum of "User Sensibility" because while you are looking to just nudge a line across a touch - somebody will try to use it to move a line 10' and wonder why the result is garbage
What you want at the end of the day is the same line just in a different location at all its nodes - a TML could likely be written for this
Alan