I don't currently have a cat but have traveled with one in the past. She's the type that could identify people with allergies and loved to rub up against them. She hated everyone else. That story is completely irrelevant here but amuses me.
I'm also at a loss as to why the situation was handled this way, fully admitting that A) I wasn't on the plane, and B) the crew had no choice once the plane went back to the gate.
Having said that, let's say I was having a nightmare and was forced to run an airline. Here's what I would have done:
A) Ask for volunteers to switch. When that didn't happen,
B) Force people to switch. Attempt to avoid those who paid for early boarding (i.e., the allergic person is likely to end up in a middle seat in the back). Offer some sort of on-board compensation, such as an adult drink, to those who were forced to switch.
C) In a scenario where (B) is impossible, off-load the person with the allergy, since they are the one causing the "issue." Note: I am not, in any way, blaming the person with the allergy or trying to minimize the danger of allergies. But in this scenario, the person with the cat has the right of way, so to speak.
Mike