There's no need to copy images from one region to another for purposes of redundancy. Each region has multiple availability zones, and those are meant to provide full fault tolerance within a given region. Each availability zone within a region is a physically distinct datacenter, and depending on the region there may be upwards of 3 to 5 availability zones. The chances of 3 or more availability zones in one region all suffering outages simultaneously is pretty small.
Depending on the complexity of your application you will likely get very good fault tolerance by simply deploying to multiple EC2 instances across multiple availability zones within the same region and putting an Elastic Load Balancer (ELB) in front of the application.
Another approach to fault tolerance is to make use of auto scaling, which not only ensures that a minimum number of EC2 instances is always running your application, but more instances can be launched automatically if the load on the application increases. Auto scaling can also be deployed across availability zones within a single reason to help ensure fault tolerance. At the simplest level, if you create an auto scaling group with both a minimum and maximum of 1 EC2 instance then AWS will ensure your application is already running, and if the EC2 instance fails for any reason then it will launch a new instance to replace it.
If you really do decide that you need to copy an instance from one region to another region then it will require multiple steps. You can't simply copy an instance from one region to another, so what you need to do is create an Amazon Machine Image (AMI) of the EC2 instance you're interested in, transfer the AMI to the new region, then launch new EC2 instances based on that AMI. It used to be necessary to use third party tools for this, but Amazon now offers the ability to do this directly. See this documentation on copying AMI's on how to do this.