It almost seems like Construct allows you to place families within families like this, except that it causes the application to crash every time I attempt it.
That's a bug! How do you reproduce it? Can you submit it to the tracker?
The engine doesn't support families-in-families. Families are just a way of applying events to a group of object types, so I'm not sure what a sub-family would do that's different to just having a separate family for that purpose. What you want, of course, is just plain old inheritence like programmers are used to, but Construct hasn't got any formal inheritence features yet.
You might also be able to get something going with private variables to configure things. I find it a really handy way to set up families. For example, you'd have your "NPC" family, and you'd have text family variables like "Race", ****** "Career", "Job" etc. Then in the layout editor you can just type these in to the properties bar, and access the variables from the event sheet editor.
Would that do the trick?