No NAT? I’m surprised Residential even sells public IPs. OK, so NAT’s not an issue, but a firewall might still be.
For isolating the problem, I was thinking maybe a file transfer from friend to you via another means might help.
https://en.wikipedia.org/wiki/Comparison_of_WebDAV_software will let you copy a specific file at a known time.
I’m not sure how you remote-access friend’s house, but if through ssh, you could probably also try scp or sftp.
Duplicati does have a throttling option which I hope isn’t on, and if on, I would hope it can never trip over itself.
Although it’s harder, if you wish to debug at the TCP level, note that sequence numbers on the wire are often shown as relative sequence numbers (values are far smaller, and easier to inspect). Whatever tool you used probably has a switch to turn this feature off, and then the view should be the same seen from both the sides.
Once you have a capture, quite often the capture format is portable or convertible for use with a different tool. For example, tcpdump is often available, small, but old. Wireshark adds lots of advanced analysis capabilities.
7.5. TCP Analysis might help, but notice it’s in Chapter 7. Advanced Topics
. Internet has resources too…
If you’re doing this as a learning opportunity, great! There’s a chance it might wind up at this level regardless.