Через /routing rule, не mangle. Таблица:
/routing table add name=rt-3xui fib. Три rule:
dst-address=192.168.88.0/24 action=lookup-only-in-table table=main
(иначе локалка теряет роутер и DNS),
src-address=192.168.88.4/32 action=lookup-only-in-table table=main
(сервер сам в WAN),
src-address=192.168.88.0/24 action=lookup table=rt-3xui
: lookup даёт fail-open в main если маршрут в rt-3xui упал. Дефолт-маршрут в rt-3xui через WG; check-gateway=ping может не сработать — юзерспейс-WG в 3x-ui не всегда отвечает на ICMP в туннеле, тогда бери Netwatch по внешнему адресу. В allowed IPs на 3x-ui добавь саму 192.168.88.0/24, иначе пакеты клиентов дропнет на входе.