(b) That's right. Termination of performance does not wipe out the entire contract. It only puts an end to the defaulting party's right to discharge outstanding obligations by performing them. It follows from this that any outstanding obligations remain enforceable at law, so that the non-defaulting party has a contractual right to claim damages for the defaulting party's breach of contract. The payment of damages has the effect of discharging these obligations, in place of actual performance.
In the example, A would be entitled to claim damages from B after terminating performance of the contract and reselling the house at a lower price.
Note: A decision not to terminate performance of a contract is binding on a non-defaulting party if the decision is made with knowledge of the facts that gave rise to the right to terminate, even if the non-defaulting party had not sought legal advice and did not know of their legal right to terminate.