Distance isn’t the issue, the example of distance I gave was for England to Sydney, Australia, that’s pretty much half way around the world 
However, with every “hop” there could be something that slows down the data/traffic (or lose data), in between each hop. Plex will have some form of “heartbeat” that allows the client to check in with the server to say “are you still there”. So if it all takes too long, or too much data is lost, it’ll think the connection is broken. This potential loss of data/increased time, can be observed by running a trace-route to her IP (Windows: tracert -d xxx.xxx.xxx.xxx), where every pingable hop will be displayed between you and the destination, and it measures the time (in ms) for each hop… FYI, doing this (as you kinda mentioned in your last message) to a different IP/service “near” to where she is, doesn’t really prove much
… It could just be that she’s using wifi to connect her tv/roku/box to her internet, and the wifi is just bad?
Long story short, if you know your internet connection is good, then I’d assume the connection that your mother in law has, isn’t. She may just have a cr@ppy ISP, old router, poor wifi? Or some company in between your ISP and her ISP is having issues. It all gets complicated, but it can be tested for to get a better understanding. And knowing the test your already did, you know that generally speaking, at least country to country (I’m assuming) it’s perfectly fine.
Does she have a computer that you can remote connect to? Do you have some form of remote desktop you could use? As you could enable pings from your own home router, and then tracert from her house to yours. This may help narrow down who’s end is the culprit? It seems a pain, but will tell you a lot.
There is no harm in just adjusting the speed down to 2mbps or lower! I have a remote user (a few hundred miles away) who can steam at my capped 10mbps all day long from their living room. But as soon as they use the tv in there bedroom it all goes downhill as there wifi sucks. So they have had to cap themselves at 0.7mbps. It’s like watching old-school low-def TV, but after a few mins, you get used to it. My point is, your only course of action just now, that won’t hurt anything, is to just keep dropping down the speed.
I get your point on how does Plex buffer, in that you expect the client to buffer up what it can, when it can. So while the connection is good, “fill up that buffer”, which should even out the few minutes where the internet suddenly slows right down… But we’re back to the bit where the client probably thinks it’s lost the signal completely with the server.
- drop the speed down and keep on going until it’s more stable - it can’t harm things to try
- try and figure out if you can remote onto a computer at her house and see if you can figure out if her connection is good, her isp is good, and what sort of tracert/milisecond info you get pinging back to your home network
- if in doubt, hire someone local to her to go and look at her wifi/internet connection and work with you to figure out why comms between your houses is bad.
I work in IT, so my next suggestion will sound a little crazy:
If it was me (actually, one of my remote users is my father in law
), I’d be creating a little NUC box, with an always-on VPN back to my house, with back-up remote desktop app, that has ethernet, but also has wifi with your mother in law’s SSID+password. I’d test the unit in other people houses to make sure that it’ll “call home”, then post it off to your mother in law. All she would need to do is cross her fingers (and toes) and plug it in to power and hopefully ethernet (near the router). You then have the opportunity to remote connect into it, have Plex running on it, and a way to transfer files to it. Transferring files may seem counter intuitive given why we’re trying to stream things, but you can setup overnight scripts that just synchronises folders: A (your house) to B (her house); if the sync fails and it’s within a certain time period it can re-run until it completes. I wouldn’t send over full sized files, I’d be looking to reduced them down quite a bit
… The whole thing would be a self-setup unit that I’d expect no one to touch ;-)… I know it’s overkill and probably seems daft to most folk, but I would end up doing this LOL.
Sorry this is so long… My head is dealing with other things (very badly) and I see this as a welcome distraction. So if none of it is of use, that’s cool 
If a faction of it help spur on some ideas, then that’s cool too 
Try and do some testing between the two houses, and start looking for a local IT company near to where she lives 