I would like to "create" a fn key ( similar to what laptops have ) on a desktop keyboard. What I would like to do is to bind Capslock to a new custom key, so that I can add new shortcuts involving that key. For example, remapping the jkil keys to left/down/top/right keys. So when Capslock + J is pressed, a left arrow keypress is simulated. I cannot bind the capslock key to an existing key like Win/Shift/Ctrl/Alt, because it will cause conflicts in my text editor because of the additional custom functionality I have within it.
You should check out AutoHotKey. It can (obviously) create hotkey remappings, but also do so much more! For your case, it can also remap the right shift, alt, ctrl separately from the left, if you wanted something like RCtrl::j to be mapped to left arrow, leaving the left control key alone...
Unfortunately, PowerToys doesn't allow Caps Lock combinations, but I've set up the shortcuts you describe (IJKL as arrow keys) in combination with the Alt key. I realise this doesn't perfectly solve your problem, but I thought it would be worth mentioning for anyone who is happy with, eg. Alt + j as ←