NBG6817 download speed inconsistencies

I have a docsis 3.1 active modem with an Zyxel armor z2 NBG6817.
My package is 600/50 with connection from my pc directly to the modem the speeds are fine.
But with the zyxel(router) there is all sorts of issues as you will see in the video,
the first few seconds it hits the speed it should be at but after a few seconds,
it drops to 300-400mbit and stay stuck there with regular spikes up to 500-580mbit.
But most of the time it just stays at 400mbit flatline.

I tried many things such as IRQBalance and setting cpu policies to performance,
they only help a little bit nothing much.
I do have Software flow offloading enabled
Without it enabled it has even more issues reaching 500mbit in general.

I'm so stuck right now been stuck in this position for the past half a year or more i do need help!

Video:

Without NSS/ NPU support, ipq8065 is punching above its weight at those WAN speeds - considering that, your figures aren't really surprising (the choppy results won't happen within its throughput bracket, as you can see in the upload direction). I wouldn't recommend ipq8065 beyond ~350-400 MBit/s WAN throughput, yes, you can stretch that with flow-offloading, but the results you're getting are exemplary for this (keep in mind, flow-offloading can only speed up established connections and you're using 16 concurrent threads). Aside from these hardware limitations of ipq806x, you also need to consider that the other end -the speedtest servers you're testing against- are increasingly getting under pressure for real high-speed connections (let's say significantly above 100-200 MBit/s).

While you can certainly give the attached pull request a test, I wouldn't expect it to significantly change the situation either.

What do i need to do to get better wan throughput?
If it is a new router which one and what exactly and what would be the price of that?

mvebu (Marvell) or x86

mvebu (Marvell) what specifically?

E.g. Linksys WRT3200ACM/ WRT32x or WRT1900ACv2/ WRT1900ACS. WRT1200AC should also do the job, but I'd go with the slightly higher end for those speeds.

...or Espressobin