My huge recommendation is to put production instances in a completely seperate region than development and staging instances. I actually just discovered that you can limit IAM API keys to a specific region, you just need to create a custom policy. The following policy is an example:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "SOME-ID-HERE",
"Effect": "Allow",
"Action": [
"ec2:*"
],
"Condition": {
"StringEquals": {
"ec2:Region": "us-west-2"
}
},
"Resource": [
"*"
]
}
]
}