I suggest giving all classes the same base HD.
Variable HP makes sense in the context of lower levels of the single player game, but Arelith is a bit different in that regards.
We even have max HD rolls on lvl up to account for it
Classes by HD:
d12 [04 classes] Barbarian, Cavalier, Dragon Disciple, Earthkin Defender
d10 [10 classes] Blackguard, Divine Champion, Fighter, Knight, Liberator, Paladin, Ranger, Swashbuckler, Vigilante, Weapon Master
d08 [12 classes] Arcane Archer, Cleric, Druid, Favored Soul, Harbinger, Invisible Blade, Monk, Rogue, Shadowdancer, Shaman, Shifter, Spellsword
d06 [11 classes] Assassin, Commoner, Dirgesinger, Elementalist, Harper, Hemomancer, Loremaster, Pale Master, Specialist, Warlock, Zhentarim
d04 [02 classes] Sorcerer, Wizard
IMO different class HD is more of an arbitrary number that aims for flavor, but otherwise has little further justification with regards to the class toolkit at this point. At the same time, HD matters as it influences core stat spread and builds
For example:
1d4 HD classes have 12 CON worth of hp less than than 1d10 ones.
1d6 HD classes have 08 CON worth of hp less than than 1d10 ones.
etc.
This indirectly ascribes different value on their stat points and how they can be distributed:
ATM a Wizard needs 26 hard CON to get the same result as a Fighter with 14 hard CON
I believe this issue has been partially acknowledged when Rogue saw HD increase from vanilla NWN 1d6 to 1d8 during the class overhaul.
I propose a more general approach.