This is awesome.

Is there a user option to override it and continue to use the users theme?

Also do themes have to be added to the codeberg? If an admin uploads it directly for their instances directory would that work, and would browsing that from a different instance load it or would they also need the theme in their files?

Yeah, unfortunately it will only work for people, that have the theme in their files, so you would have to propose it to the repo. This is mainly because of security concerns, because there are a lot of ways to inject malicious Javascript code into a theme, and we don’t want that federating across piefed.
Any reason the themes can’t just be CSS and no JavaScript? This would prevent the risk.
There are a lot of ways to inject javascript into css aswell, unfortunately. With @import, if you just escape css with </style> and so many more. It would be a herculean task to really sanitize css so it’s fully safe unfortunately and if we were to make any mistake, that would pose a massive security risk for our users. So maybe it’s possible, but I am afraid, that it’s beyond the scope of our project.