Basically when someone uses my plex server to stream something I get ridiculously high ping (sometimes as high as 1.9kms). I switched off Upnp in router settings and DLNA in plex settings and the problem persisted. Is there anything I can do to fix this or is it because my upload speed is around 1-1.5Mbps and there's nothing really I can do about it.
Your Plex stream is using all of your upstream throughput and that's the problem. While websites and games do not require a lot of upstream throughput they do require you to at the very least acknowledge that you are receiving packets. The problem is when your upload pipe is saturated those packets have to wait. You can try to do some basic QOS and limit the Plex stream to 1Mb, but that's about all you can do other than get rid of DSL and get a new ISP.
I'm not very experienced with networking but I have a BT home hub 5 (not sure if your familiar with it) but I get the impression its a very poor quality router and regards QoS I'm not sure if it would allow me to do that. But if it does is can you point me in right direction since I've never done this or would a simple Google search be sufficient.
All the BT home hubs are awful. The 3 especially when doing anything locally. Unfortunately I don't recall there being any QoS in the home hub 5. As it is built to a price (a very low one) it simply does not have the processing or memory capabilities to do something like QoS.
I am not sure about Plex (as I don't use it) but see if there is a way to setup a speed limit on traffic going out of the network.
Just checking on google and there seems to be no way of limiting the traffic going out of the network, honestly I should probably look into a new router.