|From the sounds of it, this is a dedicated physical link (leased line) between buildings. I'm I'm wrong, please correct me.|
If I'm right, then it sounds like both physical locations have their own (separate) internet connections. Again, if this is wrong, correct me.
If I'm right in both cases, then I have to ask, are the two separate internet connections from different providers or the same one? If both are from the same one (and the same provider you have your leased line with) then it seems most likely to me that should the ISP encounter issues that cause your loss of connectivity, it would affect both physical locations equally in which case, a failover solution like you're asking about, would be moot.
If however your main office has internet access from ISP A and your remote office with ISP B, then a failover would work. If that is the case, I would do the failover at both ends.
A failover solution like this could be achieved easily with either a software or a hardware solution. Speaking solely of software, I'm pretty sure you could do this with OpenBSD or FreeBSD. If you know either (or both) I would look into redundant teamed servers at both locations.
If you're not familiar wtih BSD, you could buy routers capable of doing this. We're doing something similar with our BGP routing using Nortel (now Avaya) Secure Router.
It matters not how straight the gate,
How charged with punishments the scroll,
I am the master of my fate;
I am the captain of my soul.