The issue is more related to lack of compression on your server and whether or not files are cached locally:
https://www.mydigitallife.info/how-to-enable-gzip-compress-on-php-websites/
Above discusses turning compression on within your php ini file. (read it all as it may impact some wp plugins).
As for locally caching files add this to the top of your .htaccess file:
<IfModule mod_expires.c>
ExpiresActive on
ExpiresByType text/css "access plus 60 days"
ExpiresByType text/javascript "access plus 60 days"
ExpiresByType image/ico "access plus 60 days"
ExpiresByType image/jpg "access plus 60 days"
ExpiresByType image/jpeg "access plus 60 days"
ExpiresByType image/gif "access plus 60 days"
ExpiresByType image/png "access plus 60 days"
ExpiresByType text/css "access plus 60 days"
ExpiresByType text/html "access plus 60 days"
</IfModule>
Change the # of days that is inline with your site (but keep above 14 is recommended). You can also remove any of the lines above with the days.
The next step is the number and size of images on the page. They are being sent full size but are not displayed as that size in the browser. This is waste of bandwidth.
Start with these and report back.