Even a runaway civ can be held in check and then pushed back.
Produce at least 12 military units; 3-4 melee, 3-6 ranged, 3-5 siege. Form them into diamond shaped defensive formations facing away from the center of your civ. Pick good defensive ground, and let the AI feed its units into the meat grinder.
This should buy you enough time to right your faltering economy and start going on the offensive. Make sure to rushbuy as little as possible during these hard times. If necessary, sell any buildings you don't feel that you're taking advantage of.
Don't accept any peace settlement with a neighbor that isn't in your favor (not even neutral peace). It might be advantageous to accept blank peace with a distant AI who might become a temporary and useful ally.
I just used this strategy to hold off and then roll back a very aggressive Hiawatha. He had puppeted half of Egypt and all but one city of Denmark, for a total of 14 cities. According to the trade screen, he was making almost 500GPT non-GA.
The first time he declared war, I stayed on the defensive for about 80 turns. He fed almost 100 units into my 16 before I started my offensive push. I now own all four of his original cities.
Edit: Nukes are the exception for me. If you get nuked more than once, or if your capitol gets nuked, I think it's time to suicide rush or quit.