Try copying the native version’s desktop file from /usr/share/applications to ~/.local/share/applications. I would hope it will take precedence there.
If that works, you might try changing it to a symlink rather than a copy and see if that still works, so that future changes will apply.
It kind of works - the file in ~/.local/share/applications will take precedence, but the Exec field isn’t used for D-Bus activatable apps (in which case it’s up to the D-Bus daemon to prefer one .service file over the other).
You can change DBusActivatable=false to launch the app via the Exec field.
Though it would be great if we can have proper app launcher mgmt in the UI somewhere, now that multiple versions of the same app can be installed from multiple sources (native / flatpak / snap etc).
Could you provide more information about advantages of being able to choose the version to run?
When I install an application from an external repository, the usual reason is that I found the distribution’s version insufficient for my purposes. I expect to be able to run the newer version and do not need the older one. In such case, the older version does not add any value, but is a distraction.
It is also easy to go to the distribution’s version, for example, while there is a bug in the newer version. But then I do not need the broken version and would just remove it.