I'd draw the line as follows. In my view, the difference between a core and prestige class is intrinsic in their definition. A prestige class has prerequisites, a core class hasn't.
A core class represents training (or any other developing of abilities) you've been through since you were a kid. A prestige class represents advanced developing you can only get if you had certain basic training in the appropriate field beforehand.
To become a monk, you don't need to know anything before. You get trained since you were two years old or whatever, and you are a monk. You can hear the call to paladinhood at any point in your life, even before you learn anything else. OTOH, you can't just get trained to be a bladesinger since you were two years old - you've got to be a decent fighter, performer, and spellcaster before you can even hope to begin to understand the art used by this class.
Naturally, this definition ultimately means that effectively there is no need to justify a class being core or prestige. A core class has no requirements by definition, and therefore it is justified in being core. Which is just fine for me, as it means that the choice of making a class core or prestige is, as it should be, a flavor and balance one. As a flavor choice, noone can say "it should be core|prestige", as long as it's balanced.