Whether a given dwarf is actually bothered by the unhappiness of others should be very much a personality thing. Only part of the fortress would take part in any downward spiraling then.
Well there could be a lot of personality involved. Dwarfs who care for other dwarfs will be more affected but also once more then half of all dwarfs are unhappy then dwarfs who are selfish might decide that they join in order to make shure they are in a good place if after a fight breaks out. Also dwarfs who are going to be on the opposing site of the angry dwarfs would get worried and unhappy.
We will need a way to make a group of dwarfs get hated. I was thinking about making every dwarf having a basic "hate" against one group. These get a 10 points on this dwarfs hate meter. When someone from a particular group does something against a another dwarf this will add to the hate meter. When an unhappy dwarf talks to another unhappy dwarf 10% of the hate from the most hateful dwarf is transfered to the other dwarf.
We also need a way to lower hate. I was thinking about a happy dwarf talking to another happy dwarf from a particular group would lower their hate. This could also influence the formations of these groups.
For dwarfs targeting a particular group of other dwarfs (not noble but other civs) there could be several selections that can be made: beardless/bearded, religious, profession, immigrants/fortborn, friendship-groups and personality traits.