That looks massively broken. How did you log into your router in the first place?
here is the output I get from mtr -z 172.217.2.4
(copied from the terminal windw running the ssh session to my openwrt router, but if you have a mac or linux machine in your network you do not need to run mtr on the router itself):
router (AA.BB.CC.DD) 2019-12-08T22:35:07+0100
Keys: Help Display mode Restart statistics Order of fields quit
Packets Pings
Host Loss% Snt Last Avg Best Wrst StDev
1. AS6805 loopback1.0003.acln.06.ham.de.net.telefonica.de 0.0% 6 9.1 9.0 8.9 9.1 0.1
2. AS6805 bundle-ether10.0002.dbrx.06.ham.de.net.telefonica.de 0.0% 6 9.2 9.1 8.9 9.2 0.1
3. AS6805 bundle-ether2.0001.prrx.06.ham.de.net.telefonica.de 0.0% 6 8.9 9.1 8.9 9.4 0.2
4. AS15169 72.14.208.60 0.0% 6 9.4 9.3 8.8 10.1 0.5
5. AS15169 108.170.253.84 0.0% 6 11.4 12.7 9.1 21.3 4.9
6. AS15169 108.170.225.178 0.0% 6 9.9 10.2 9.9 10.7 0.3
7. AS15169 172.253.50.214 0.0% 6 15.2 15.1 14.4 15.7 0.5
8. AS15169 172.253.66.16 0.0% 6 18.1 17.8 17.5 18.1 0.2
9. AS15169 209.85.142.167 0.0% 6 23.3 23.3 23.1 23.8 0.3
10. AS15169 172.253.65.176 0.0% 5 91.0 94.4 90.7 108.8 8.0
11. AS15169 216.239.58.254 0.0% 5 106.7 106.9 106.7 107.5 0.4
12. AS15169 72.14.232.70 0.0% 5 116.0 116.1 116.0 116.3 0.1
13. AS15169 209.85.251.139 0.0% 5 125.5 126.0 125.5 127.1 0.7
14. AS15169 172.253.51.119 0.0% 5 125.8 125.8 125.2 126.7 0.6
15. AS15169 108.170.254.81 0.0% 5 126.3 126.2 126.0 126.4 0.1
16. AS15169 72.14.238.163 0.0% 5 125.1 124.8 124.7 125.1 0.2
17. AS15169 lga15s45-in-f4.1e100.net 0.0% 5 124.9 125.0 124.8 125.3 0.2
You can nicely see the packet loss per hop (typically as long as the end host has no or very little packetloss you can ignore that) as well as current, average, best and worst RTT (as well as standard deviation), often if a network path is congested the RTT will show some sort of a step function, with reasonably low RTTs (low compared to the path length, light in GF gives ~100Km distance per ms RTT) up to a point and increased RTTs to all points after that. Note that is a sign of congestion, but not a precise localization of the place where the congestion happens (see https://archive.nanog.org/sites/default/files/10_Roisman_Traceroute.pdf for the challenges in properly interpreting traceroute/mtr output), if however you have traceroutes/mtr output in both directions, so from your end to the server and from (close to) the server to your router's IP address than you can even localize the congested hop with some confidence (it s still error prone, but you at least have a chance).
This is only a work-around if the normal network path from your ISP to the game servers is congested and introduces unwanted delay, if you have no indication for that an VPN/VPS is not going to help much.
THe rule of thumb is 1ms RTT allows for 100Km of fiber, so 750 miles -> 1,207.008 Km or 12 ms propagation delay, add a few active components and a few detours, 30 ms sounds reasonable, if you get that reliably with low variation/jitter, than digging to deep into traceroute might be a waste of time (except it is a skill that can come in handy when you have network issues).
Assuming there are things on your line that can be improved noticeably (you seem to have done a thorough job with the modem and ISP already).
Yes cake reports its configuration pretty complete:
qdisc cake 802a: dev eth0 root refcnt 2 bandwidth 30Mbit diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100.0ms noatm overhead 27
So in your case it is the default diffserv3 "profile" and hence cake also gives you three detal columns for the three priority tins, called Bulk, Best Effort and Voice. If you switch to diffserv4 you get four columns (and 8 for diffserv8).
No, drops is expected, this is how cake tells individual flows to slow down if the capacity is exhausted (if a flow uses ECN it will see less drops and more marks). So drops are a-OK, just too many drops can be suspicious.
Well, on the egress side "qdisc cake 802a: dev eth0" you have a few packets in the voice bin. Not sure about what you expect.
ECN:
Cake does ECN by default, but ECN needs to be negotiated by both end-points of a flow, so if you want it used make sure to configure your end-host appropriately (and the same goes if you want to be sure it is not used).
triple isolate:
IMHO configuring nat dual-dsthost ingress
for the ingress traffic and nat dual-srchost
for the egress traffic is more predictable (as that should give each computer/IP-address in your home network an equal share of the available bandwidth (but dynamically, only active hosts are counted here, so a single active host will get 100% of the capacity), triple isolate will do something similar (especially if there is a decent mix of active internal and external IP addresses) but without the simple predictability of the dual-xxxhost modes (then again triple isolate does not need to treat ingress and egress differently, this is why triple is the default).
latency target: you can not even directly configure that in cake, it is typically set to 5% of interval (and you can configure interval) interval should be in the right order of magnitude of your typical RTTs, the default 100ms works quite well for many uses and RTTs from 10-200ms or so (there is no hard cut-off).
No idea, except for the fact that cake reports its effective configuration in a way you could use as part of a cake invocation:
qdisc cake 8028: dev eth1 root refcnt 2 bandwidth 6Mbit diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100.0ms noatm overhead 27
tc qdisc add root cake bandwidth 6Mbit diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100.0ms noatm overhead 27
You can basically copy and paste the keywords from the tc -s qdisc
output to instantiate cake with the same options.
Make backups and if possible keep a spare router already configured as a cold-spare so you can avoid downtime if something goes pear-shaped?