I see you made your own patcher. maybe add a version to it? or a changelog to know what the current patcher is patching, in case you add more patches in the future?
Patchers are fine too if you don't want users to learn how to use xdelta, as long as the patcher only contains the patch information and not the complete file to re-create.
I personally find the file size a little big a simple byte swap, unless it has a GUI and the background picture is that big, or maybe it's a xdelta+patch package?
Like you said, it can be difficult for users to learn how to use hackpack and extract nca.
When I talked about another project doing things right, I meant they are providing a script to patch the nsp (or xci) directly, the user doesn't have to learn how to use hacpack.
using your patcher is fine but only half the steps, as a suggestion you could make a script (batch file) to do both hackpack and use your patcher.
you can find a script here :
https://github.com/UnderProject/UnderProjectNX/blob/master/TRADUCIR.bat
you need the content of this folder too :
https://github.com/UnderProject/UnderProjectNX/tree/master/tools
except you can replace the xdelta executable and patch with your own patcher.
The user only has to provide the title.key file generated from his console (all tools are using this file so they should already have the keys, they just need to put it in the folder)
again, that's just a suggestion to make things easier for everyone.