I tried something similar like in this case but catch-all simply does not work.
When i access portainer on port 80, although it is on top of Caddyfile, it get overriden by the the catch-all part which tells Caddy to forward port :80 to the other Caddy.