I have confirmed that this problem still exists with build 4022. With some files, the MacOS also opens up one copy of the file in another editor (e.g., .txt files in Textedit). I was not able to use builds 4048 or 4050, since Cyberduck would not always successfully navigate from one directory to another.
The command you sent returned the following result:
kassissieh-mac:~ kassissiehr$ /System/Library/Frameworks/ApplicationServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user
-bash: /System/Library/Frameworks/ApplicationServices.framework/Frameworks/LaunchServices.framework/Support/lsregister: No such file or directory
In Cyberduck -> Preferences -> General -> Downloads, uncheck "open downloaded files with default application." I still have Smultron selected as Cyberduck's default text editor in Cyberduck -> Preferences -> External editor. Now, Smultron only opens one copy of each script. In previous versions of Cyberduck, this didn't happen. Now, it appears that Cyberduck opens one copy of the downloaded file in the default application and another in the external editor. In cases where the external editor is also the default application for that file type (in my case, .pl and .php), this results in two copies open in Smultron. In cases where another application is the default (e.g., .txt), then one copy opens in that application.
For me, it isn't a problem to disable the automatic opening of downloaded files in the default application, because I only use Cyberduck for coding projects. For someone using Cyberduck for both generic file transfers and programming, I imagine that this could become a feature request.
Let me know if this is indeed the final solution. Many thanks for your attention to this case.