Hi Steve,
AWS's ELB should be sending HTTPS headers to Apache, which in turn may already be setting HTTPS to on.
Moodle's config.php should still show https:// even if the local Apache server is serving via HTTP to the upstream proxy.
To check this is the case, create a test.php file in the wwwroot with the contents of
<?php phpinfo();
then visit it, check for X_FORWARDED_PROTO and/or HTTPS.
If the config.php has http:// the it tries to redirect to that URL in the event it's visited on a different protocol, so this would explain the too many redirects.
Hope that helps.
Matt