I personally see the situation where I would get two independent ISP's, eg a cable and ADSL provider. They don't have to know anything about eachother. The only thing they do is that they each route a prefix from and to me as delegated out of their TLA. My boxes thus would get 2 prefixes.
And, you want to have 2 exit routers, if you want to avoid a single point of failure.
IMO, you don't have to have a global routing table to do this.
Then, you want to have full route in your site to choose the best exit router for each destination.
The same here.
Or, you may develop a complex protocol on hosts and exit routers that a host first query exit routers (multiple ones, of course) to choose a source address and routers between the host and the exit routers perform source address based routing (or, the host may use tunneling to the exit routers), even in which case, the exit routers must have a global routing table.
Do you need to have a global routing table to make "source based routing" ?