I don't think even the second requirement is doable. You can't configure the gateway to hold processing INVITE message for 20 secs.
What you can do is to configure a dummy dialpeer with preference 0 (first selection) and make the session target point to unreachable addresses. Then have your pots dialpeer with preference 1. Finally, change the INVITE timeout to x secs. This will make the gateway wait for x seconds before sending the call to E1 which is second dialpeer.
However, 20 seconds is high value and the caller will timeout before dialpeer failover (unless you change too many parameters at the caller side as well).
In short, I don't recommend at all doing this unless there is a priority requirement.