Your problem reminds me of when one is trying to make a bootable standalone USB drive with Linux on it. It is very easy to make a “Live” Linux USB Drive that you can run Linux from, but lose whatever changes you have made each time you start it up. If you want to install the system on another USB drive instead of your hard drive... so that you can run Linux standalone with changes being saved... things get much trickier. You have to either do a lot of futzing around with the uefi partition that will not be written correctly after you have completed the process, or you have to temporarily disable the existing uefi boot partition while you are installing the system on your USB drive. This is because the system will not write a new uefi boot partition so that another can become active and be written properly.
That’s why I run Ubuntu in a virtual machine