Its the ONT and hub are probably failing to auto-negotiate the correct speed, due to timing differences between the two bits of hardware. This is actually quite a common problem.
https://en.wikipedia.org/wiki/Duplex_mismatch
Sometimes rebooting either the ONT or the hub, can fix the issue.
The alternative is to insert an 1GB Ethernet switch, preferably on the home hub WAN end, as that has the ability to correct most timing issues.
You would only be using two ports of the switch, so you only need a small one, as you cannot use the other ports as it would be on the WAN side.
@LowPingHunterwrote:it did actually produce 900mb for the first day after the switch.
At least that proves the internal cable is up to spec.
So check & change the patch cables & also try with just one device connected.
Cables very rarely fail so my best guess would be poor terminations at the ethernet sockets.
If it is an autonegotiation issue it may be as simple as unplugging the network cable and plugging it back in again while the PC is on. A full reboot will set everything back up from scratch though, so always a good idea.
Who is coming on Friday , an Openreach engineer ?
If you have reported a ‘fault’ now that your router is connected on the end of an apparently faulty internal cable ( a fault that wouldn’t exist if the router were next to the ONT and not using this internal Ethernet connection ) and OR are visiting on what seemingly will be a waste of that engineers time ( service demonstrated OK at the point where OR are responsible ( next to the ONT ) and not OK at the end of a third parties cable , where you are responsible ) that’s the very definition of a chargeable call out , as it’s clear that nothing on the OR network is ‘faulty’ , the problem being on something not supplied or maintained by Openreach, that’s not to say a charge will be raised, but you couldn’t justify complaining if a charge is raised.
If your last post was a reply to @iniltous , then I think that they were just trying to potentially save you from receiving an unnecessary bill.
I don't know what the current charge is, but 10 years ago, it was something like £128.