Trying to give a more complete picture. Please correct me with more useful tcpdump calls, if needed.
I issued curl --local-port 4000 http://172.22.16.199:8080
on the problematic AP and tcpdumped on the AP itself, the OpenWrt router and the VPN server:
Access Point
U6-Lite-BZ.6.2.39# tcpdump -i br0 host 172.22.16.199 and port 4000
16:59:31.570219 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [S], seq 104323679, win 29200, options [mss 1460,sackOK,TS val 328800 ecr 0,nop,wscale 5], length 0
16:59:31.679918 IP 172.22.16.199.8080 > 10.0.99.142.4000: Flags [S.], seq 1296771736, ack 104323680, win 65535, options [mss 1385,nop,wscale 8,nop,nop,sackOK], length 0
16:59:31.680177 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [.], ack 1, win 913, length 0
16:59:31.680627 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:32.008162 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:32.338157 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:32.652263 IP 172.22.16.199.8080 > 10.0.99.142.4000: Flags [S.], seq 1296771736, ack 104323680, win 65535, options [mss 1385,nop,wscale 8,nop,nop,sackOK], length 0
16:59:32.652428 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [.], ack 1, win 913, length 0
16:59:32.668109 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:32.998161 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:33.328160 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:33.658154 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:33.988252 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:34.318173 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:34.652722 IP 172.22.16.199.8080 > 10.0.99.142.4000: Flags [S.], seq 1296771736, ack 104323680, win 65535, options [mss 1385,nop,wscale 8,nop,nop,sackOK], length 0
16:59:34.652887 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [.], ack 1, win 913, length 0
16:59:34.978183 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:36.298172 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:38.666464 IP 172.22.16.199.8080 > 10.0.99.142.4000: Flags [S.], seq 1296771736, ack 104323680, win 65535, options [mss 1385,nop,wscale 8,nop,nop,sackOK], length 0
16:59:38.666650 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [.], ack 1, win 913, length 0
16:59:38.948163 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:44.248199 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1:83, ack 1, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:46.670834 IP 172.22.16.199.8080 > 10.0.99.142.4000: Flags [S.], seq 1296771736, ack 104323680, win 65535, options [mss 1385,nop,wscale 8,nop,nop,sackOK], length 0
16:59:46.671029 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [.], ack 1, win 913, length 0
16:59:52.680947 IP 172.22.16.199.8080 > 10.0.99.142.4000: Flags [R], seq 1296771737, win 0, length 0
OpenWrt router
root@router:~# tcpdump -i br-lan host 10.0.99.142 and 172.22.16.199 and port 4000
16:59:31.573883 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [S], seq 104323679, win 29200, options [mss 1460,sackOK,TS val 328800 ecr 0,nop,wscale 5], length 0
16:59:31.574070 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [S], seq 104323679, win 29200, options [mss 1460,sackOK,TS val 328800 ecr 0,nop,wscale 5], length 0
16:59:31.683788 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [.], ack 27338385, win 913, length 0
16:59:31.684392 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:32.011793 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:32.341784 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:32.656036 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [.], ack 27338385, win 913, length 0
16:59:32.671741 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:33.001788 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:33.331786 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:33.661784 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:33.991886 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:34.321805 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:34.656496 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [.], ack 27338385, win 913, length 0
16:59:34.981816 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:36.301841 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:38.670259 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [.], ack 27338385, win 913, length 0
16:59:38.951801 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:44.251841 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [P.], seq 1627241545:1627241627, ack 27338385, win 913, length 82: HTTP: GET / HTTP/1.1
16:59:46.674635 IP 10.0.99.142.4000 > 172.22.16.199.8080: Flags [.], ack 27338385, win 913, length 0
VPN server
root@vpn-server:~# tcpdump -i enp0s3 host 10.0.99.142 and 172.22.16.199 and port 4000
16:59:31.572533 IP 10.0.99.142.4000 > 172.22.16.199.http-alt: Flags [S], seq 104323679, win 29200, options [mss 1460,sackOK,TS val 328800 ecr 0,nop,wscale 5], length 0
16:59:31.680578 IP 172.22.16.199.http-alt > 10.0.99.142.4000: Flags [S.], seq 1296771736, ack 104323680, win 65535, options [mss 1385,nop,wscale 8,nop,nop,sackOK], length 0
16:59:32.652923 IP 172.22.16.199.http-alt > 10.0.99.142.4000: Flags [S.], seq 1296771736, ack 104323680, win 65535, options [mss 1385,nop,wscale 8,nop,nop,sackOK], length 0
16:59:34.653388 IP 172.22.16.199.http-alt > 10.0.99.142.4000: Flags [S.], seq 1296771736, ack 104323680, win 65535, options [mss 1385,nop,wscale 8,nop,nop,sackOK], length 0
16:59:38.667113 IP 172.22.16.199.http-alt > 10.0.99.142.4000: Flags [S.], seq 1296771736, ack 104323680, win 65535, options [mss 1385,nop,wscale 8,nop,nop,sackOK], length 0
16:59:46.671465 IP 172.22.16.199.http-alt > 10.0.99.142.4000: Flags [S.], seq 1296771736, ack 104323680, win 65535, options [mss 1385,nop,wscale 8,nop,nop,sackOK], length 0
16:59:52.681581 IP 172.22.16.199.http-alt > 10.0.99.142.4000: Flags [R], seq 1296771737, win 0, length 0