As part of the solution, here goes an implementation of a xdg-launch utility that would be used as shbang of the .desktop files.
That way, we could simply remove any special treatment of .desktop files launching from nautilus, just making it execute it as a regular executable file. Then it can add a mime handler for the .desktop files so a properties dialog is shown when a non-executable .desktop is clicked. daniel
xdg-launch
Description: Perl program