I had a similar idea to this- custom races upon character creation- but I’ve been busy updating my other mods to work on it. One thing I was going to try was to make new Player Pawns for each new ‘race’ and include them in the spawn menu, but I’m pretty sure that would require a Total Conversion and some clever tinkering. I know that Play as Dino currently uses the workaround you’ve just described so that it can avoid being a TC, but then you get into the problem of letting other players ride that player…
In short, I think it’s possible with a Total Conversion but you’d probably need a workaround for a regular mod. I haven’t gotten into the depths of character spawning though, so it may be worth checking out the Player Pawns.