Yes. There's no limitation for multiclass characters regarding subclass choice - except some Paladin/Priest combos where the favored/disfavored dispositions (cruel, benevolent, honest, clever and so on) would clash. So for example Kind Wayfarer/Priest of Skaen is not possible.
Official companions come with fixed (sub)classes. You can't change those (except with mods or the use of the in-game console). Most of them use the vanilla classes (for example Eder, Aloth) but some use subclasses (Xoti as Monk for example has a special subclass, Serafen has a special Cipher subclass, Fassina is a Conjurer and so on).
Sure. Herald is a strong combination.
I personally would go Swashbuckler. I even use Eder Swashbuckler as main tank and it works well. At the same time it has more offensive capabilities than a pure Fighter.
Fassina as Sorcerer is fine. She is a Conjurer Wizard and an Animist Druid. You can't change that if you're not using mods/console.
Priests are good as single class. Their highest spells (that you can't get as multiclass Priest) are very good. Also you gain access to very impactful buffs sooner (single class chars gain access to higher level spells/abilities sooner than multiclass chars). Def. not a waste.
Tekehu is fine either way. But the Druid spells he gets as bonus spells from his Watershaper subclass are very good because they are all foe-only. For example a foe-only Chillfog is a very convenient and effective spell. Druids are actually better healers than Priests, so you can use Tekehu for healing, too while Xoti focuses on buffing. Both can deal good damage with spells, too. One of the strongest offensive spells in the game is Great Maelstrom. If you want that Tekehu needs to be single class. But as I said: he works fine either way, even as single class Chanter (Stormspeaker).
If I counted correctly you already have 5: Herald, Eder, Fassina, Xoti and Tekehu.
In Deadfire your max party size is 5.