This is a common requirement for one of our clients. They will often buy 10-15 domains related to a campaign, one of which will be the "root" domain to which all others point. @ewwhite is correct that the cleanest solution is setting up DNS for only the root domain and just using forwarding at the registrar level for all the rest.
But to be clear: there's no way to do redirection like this using Route53, or to use wildcards with domain names themselves.
If you something that you control on your end of things, I would suggest pointing all the "extra" domains to the IP of a server that you can run Apache or NGINX on, and then create a site with a simple config (it doesn't need a webroot at all) that listens for all of those names and redirects automatically.
In Apache, within your <VirtualHost *:80> section for this site, you need only three lines:
ServerName mydomain.com
ServerAlias *.mydomain.* myotherdomain.* *.myotherdomain.* yetanotherdomain.*
Redirect 301 / http://mymaindomain.com/
In NGINX you can do this even more easily, within a server declaration:
server {
server_name mydomain.com ~^(www\.)?(mydomain.+)$;
rewrite ^ http://mymaindomain.com/;
}
I should also note that one cool advantage of running your own redirects like this is that you can parse the log and get decent analytics on how many people hit your site via those different paths. I've even known of companies seeding different audiences (or marketing channels) with different domain names, so that they know who would be coming in under each name. In that case you would probably want to make that a 303 redirect in the Apache config above.