It's one of the pitfalls of how campaign was designed and DnD's limited control spells.

Normally, a campaign will have a consistent enemy typing throughout. Thus allowing you to build characters around those enemies. However with BG3's campaign, there's Act 2 which drops a ton of plants/undead into the mix which makes various spells less/more effective (It's great for Clerics who can clean house with Turn Undead and Spirit Guardians for example)

Then on top of that you have the awkward DnD spell lists. Where you get Hold Person as a level 2 spell but only works against humanoids, while you have Hold Monster as a 5th level spell to work against the things not classified as humanoid (Including things that could be considered "Humanoid" in appearance like Gnolls and Ogres)

Same thing happens with Dominate Person as 5th level while Dominate Monster is 8th level (Thus unattainable in BG3)

Normally, this is supposed to balance out against damage spells by the difference in potency for spell slots. Fireball works against everything but to scale into higher levels you tend to need to upcast and use your precious higher level spell slots. While something like Hold Person is equally devastating at level 3 as at level 20 when using only a level 2 spell slot (Allowing a control focused character to be very potent while having more flexibility in spell usage).

But yeah... Act 2 will be awkward for controller characters. Since you don't get the more universal control spells like Hold Monster and Otto's Dance until later (Even more so for multi-classing) thanks to the level 12 cap meaning the 5th level spells are end-game ones rather than mid-game.