How do I utilize Drupal commerce to sell large files stored on Amazon S3
You really want to use the Drupal License and License Billing modules to sell access to Commerce Files.

It might take a little custom code (a few simple objects and a few hooks) to make sure your amazon S3 links are getting licensed correctly to the right user. 

In terms of your two requests:


The ability to choose buckets within the field when creating a product.
link to an existing .zip file already stored on S3


Yeah, it looks like s3 file system module is the way to go for S3 API ... they even have a migrate module and a proxy module that could make a simple file on your website, load to an s3 of your choice and still be linked to your local.

If you installed the S3 module mentioned above, you could:


Use hook_form_alter() to modify the file field 
Use hook_form_alter() to add pre-empt the normal submit handler
Use your new submit handler to save the file to your preferred bucket.