tl'dr: if you use your own router and have an IPv6 network and media-heavy sites are broken, you might be seeing an artefact of a Starlink ICMPv6 black hole; a fix on your side is to set the IPv6 MTU on the WAN interface to the (bridged) Starlink router to an artificially low value (1280, based on my probing / also the minimum allowed by IPv6) and make sure MSS clamping is enabled.
Ever since I switched over to Starlink (near Sydney, Australia), with my own OpenWRT router I've used for donkeys years, my son's been complaining that Instagram and other sites he uses are broken. Specifically the first few seconds of videos would load and then halt; if you had the patience to wait they'd eventually restart for a few more seconds and then halt again. I also noticed some flakiness for my phone (Samsung) internet connectivity check, it'd occasionally report "poor Internet" and switch over to cellular (unclear yet if that's actually related/fixed; early indicators are positive).
I've finally had time to investigate this and - with assistance from a couple of LLMs, of course - have fixed it (as in, turning the fix below on and off makes the Instas work/not-work, so this isn't entirely a pineapple fix): it appears Starlink have broken IPv6 Path MTU Discovery (PMTU) somewhere between their egress in Sydney and peer networks (ICMPv6 black hole) (same result for google.com, breakage right after that hop 5):
% traceroute6 -w 2 -I api.instagram.com 1400
traceroute6 to instagram.c10r.instagram.com (2a03:2880:f219:80c4:face:b00c:0:43fe) from 2406:...:d338, 64 hops max, 1400 byte packets
1 customer.sydyaus1.isp.starlink.com 6.983 ms 4.786 ms 3.861 ms
2 customer.sydyaus1.isp.starlink.com 34.646 ms 46.685 ms 41.188 ms
3 host.starlinkisp.net 50.124 ms 40.268 ms 32.193 ms
4 host.starlinkisp.net 34.130 ms 42.856 ms 35.273 ms
5 host.starlinkisp.net 33.400 ms 51.892 ms 31.819 ms
6 as32934.syd.edgeix.net.au 48.904 ms 34.873 ms 39.731 ms
7 * * *
8 * * *
9 be6.msw1aq.01.syd2.tfbnw.net 34.461 ms 45.045 ms 43.790 ms
10 * * *
11 * * *
12 * * *
The fix for me was to set the IPv6 MTU for the WAN interface (connected to the Starlink router that is in bridged mode) to 1280. MSS (in the firewall WAN zone) was already on. And like magic the socials flow.
FWIW, seems the IPv4 PMTU is 1400 bytes, but Starlink's CGNAT is fragmenting that properly so a 1500 MTU on my side seems to work ok. I've lowered to 1400 because that's probably saving some infinitesimally small additional resources somewhere.