It's not really a middle ground, though. Whether voiced or not, bad writing is bad writing, and protags in these kinds of games tend to be just that because they're also meant to be self-inserts. That includes protags like Shepard for instance.
I thought Shepard was pretty good. Protagonist will always serve a different function than a companion, but, for what it was, I found Shepard to be a very effective protagonist.
I disagree about customs having to be bad - good blank slate is all about provide a range of expression that games provide - player should be able to define and fill the blank protagonist as they play, not be stuck with an expression-less cardboard cutout.
Obsidian has been doing terrific job with their protagonists, and some games with less customisable protagonists like Planescape and Disco provided players with interesting conversation choices to shape the character they control.
I think the issue I have with BG3 is how dry protagonist writing is. It boils down to the most fundamental actions with no ability to specify the intent, viewpoint or opinion. You could say that filling blanks is up to you to do outside the game, but I don’t think it works in a game that is so detailed otherwise, especially that game will regularly take control from the player and have the character animate regardless of what our intentions could be. The issue is exacerbated with NPC who react to those basic actions we can take, without any context of reason or intent - this is not BG3 specific issue, most RPG run into it to some extend - but I found it to really block any role playing attempts I might have attempted in BG3.
I never hoped for anything on the quality of level of Shepard - closer to Inquisitor from DA:I. Theoretically a VO could do the heavy lifting in characterisation, that written text doesn’t provide. Still, doing VO for Tavs and Origins would be a monumental undertaking so it is understandable if they don’t do it. That does leave us with just dry protagonist conversation trees though.