I found that this works (as of Emacs 26.3). It gives the exact behavior specified, opening a file in the same window (and opening a directory in another), affecting mouse actions only:
(define-key dired-mode-map [mouse-2] (lambda (event)
(dired-mouse-find-file event 'find-file 'dired-other-window)))
However, I find it much ...
I had the same problem and it was caused by the fact that one of the ls switches I use normally in dired was not working on the server shell.
Removing all the switches except -l with C-u s solved the problem.
You can do the following to create an arbitrary number of buffers visiting the same file:
Create a new buffer
Set its buffer-file-name to the desired file's path
Probably also call rename-buffer to match (this is cosmetic)
Revert the buffer
Thusly created buffers differ from regular cloned buffers in that their contents is not shared. Thus, it can be used ...