The way i see it, you have two choices:
- to make the redirects as you stated, or
- to make a requests for the resources from S3 and then to return them to the users via your response.
So, if user wants to see the http://image.mydomain.com/imagepath.jpg resource, you can internally request the original resource from http://bucket.amazons3.com/imagepath.jpg, save it locally and return it to the requesting user.
It does spend a lot of bandwidth, but if this is your critical requirement, this should be the way to go.