If you are very intent on doing this without reverse proxy, you could modify Gitea and compile your own binary.
You can change routes in this file gitea/web.go at main · go-gitea/gitea · GitHub. You will have to make the relevant modifications to templates as well. Note that this change is probably not ideal like lunny mentioned.
The raw link can be amended in the template, or modify the raw route to redirect to the raw domain in the code. Most maintainable would be to change the template, since you can provide official Gitea binary with custom templates.