Is there a way to execute a shortcut on a schedule
Solution 1:
Requested Way
To accomplish what you requested, when you add the Action to the scheduled task, you need to enter the following (here I am launching PuTTY):
cmd.exe /c "C:\Users\username\desktop\putty.lnk"
This will accomplish what you requested. (Note: the /c "C:\users\username\desktop\putty.lnk" goes into the "Add Arguments:" field.
The Better Way
What you are describing is normal behavior, and is what I would expect to happen. To give a bit of information, when you run a shortcut you are actually running the executable and possibly specifying additional parameters. To verify this right click on the shortcut in question | Select Properties and look at the "Target" field. For example this is the target for my Chrome shortcut:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
If you need to add additional parameters to the scheduled task, you can add in the Add Arguments (Optional) field. For example I have a PowerShell script set up as a scheduled task and add the -ExecutionPolicy Bypass parameter in the Add arguments field.
Here is an additional resource if you need to pass multiple arguments in the scheduled task.