This could be implemented at the site level (unfortunately with bloated frameworks, few care). One possible implementation could have the browser measure how long it takes to load assets and switch to requesting lightweight ones if loading takes too long.
Oftentimes, the real killer is not so much bandwidth but latency. If a page requires many requests to complete sequentially (ie. because one asset needs to be loaded in order to know how to request the next one), that all adds up real quick and produces a poor user experience.
This makes me wonder: why can't a regular modern browser gracefully support this usecase?