So, when is a consensus reached? Why can't this go on forever?
At page 27 of the white paper you can read about the consensus protocol. At page 31 there is a "Commitment" section. Basically, the nodes have X rounds (we didn't agree on the exact value of X yet) to reach consensus. If they don't, no reward is given to them, so it's in their interest to achieve consensus.