Hi
Here are a couple of thoughts from a complete amateur in this area. I don't know if anything below will fix the issue as I've not had time to try them, but hey, even if not, maybe one of them will help inspire further thoughts, eventually leading towards the 'proper' solution?
I'm no expert in this area and I've never used the IdentityFile to make an 'alias' key name work, but I was thinking about this last night (and planning to play with it over the weekend, if time permitted) and because I have 'played' with another aspect of keys in the past, it struck me that perhaps there were options commented out in the main config file, so I had a look at /etc/ssh/ssh_config but there were no IdentityFile lines mentioned in there (so likely not, I thought) then this morning, it occurred to me to look at my Debian laptop's own /etc/ssh/sshd_config file and I see that it does contain the below lines (though obviously, as you can see from the below they are commented out as you'd normally put changes into the per-user configuration file):
# StrictHostKeyChecking ask
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# IdentityFile ~/.ssh/id_ecdsa
# IdentityFile ~/.ssh/id_ed25519
Odd that they're not also listed in the default Qnap file; I wonder why that's the case?
Anyhow, back to the user file in ~/.ssh/ and apologies if you've already tried this - and as I say, I'm a complete 'ham' in this area - but I note you mentioned that you'd made a [new?] config file in root's ~/.ssh directory, whereas I see that within my own Qnap's (a TS-453A) ~/.ssh/ directory, I already have a file called sshd_user_config residing in there (which I didn't 'knowingly' create; I guess it could have been 'system created' when I recently enabled a second SSH user via the GUI, or perhaps it is only for the user list and not the overall 'per-user configuration file' variations to the main /etc/ssh/sshd_conf file) but if that file didn't already exist on your own NAS, I wonder if you'd named your new file as 'sshd_user_config' or just 'sshd_config' (and if the latter - and that file doesn't already exist - maybe you could try renaming your new config file to 'sshd_user_config' and see if that works)? Again, apologies if these are all things that you've already tried (or if I am incorrect in assuming that sshd_user_config is for anything more than the just containing the access control list; I've not yet had time to take a deeper dive into how this should all be done).
If none of the above tricks work, I wonder whether adding the IdentityFile line into the /etc/ssh/sshd_config file might work (though I've not checked whether changing that one will survive a reboot)? As I say, it's now something I do plan to play with in the future (just to enhance my own knowledge) but as I don't have any free time at the moment, I just thought I'd chuck a few wild ideas up here in case any of them worked (or if not, they might trigger other ideas that could be worth experimenting with)?
All the best,
Briain