I think it’s worth considering as an option. It could come with a warning that changing a character’s class may significantly conflict with their story.

So for instance Shadowheart acts like a cleric, is treated as a cleric by other characters and has a storyline based on her being a cleric, but mechanically plays like a lock picking backstabby rouge. Is that a trade off some players would accept? Quite possibly, particularly for subsequent play throughs.

A more natural way to do this might be to allow multiclassing for companions, so she is always still technically a cleric, even if most of her skills are elsewhere. Then you’d only have to worry about having the “wrong” party composition for the first few levels. That happens in most RPGs anyway as you generally travel with the first companions you meet before gradually swapping them out.

If they wanted to be really clever about it, maybe her story could change somewhat to reflect that she’s had a bit of a change of career?

We don’t really know how much the characters’ storylines are dependent on them sticking to the default classes. It might be fine, although I suspect that it could have a major impact with Gale at least, as his basic description states that being a powerful wizard is his main motivation. Astarion’s story on the other hand is probably a lot more about being a vampire spawn than a rouge. Maybe some characters could be more flexible with their class than others?

I don’t really know, just throwing around some ideas.