Two things.
1) If a player, at the time of character generation or session 0, says that he has an adventuring uncle in whose footsteps he's following, and that he was raised hearing stories of the uncle's exploits, how would you handle that?
First off, it wouldn't get to the point of a player just saying this. If a player wants to delve into their character's family history before puck drop that's fine, but it'd be handled the same way any other PC's family history is handled: you can choose basic stuff that doesn't give any potential advantages (e.g. you come from a long line of farmers or brewers or what-have-you), or you can randomly roll to see if there's anything more significant but you're stuck with whatever you roll even if it's something you could have chosen.
Would you allow such a character the option to know about a monster vulnerability? Would you require a check, but lower the DC compared to another character possibly knowing it?
If the earlier rolls had come up saying there was another adventurer in the family I'd probably give an overall check to start with to determine just how much info was passed on, i.e. did your uncle tell you tales of adventure every night or did you almost never see him, and base any subsequent checks* on that.
* - including monster knowledge; and things like dungeoneering, survival skills, and so forth at low level until the PC would have learned for herself anyway.
(side note: the place I always run into player knowledge v character knowledge isn't trolls, it's vampires)
What if D&D 5E actually addressed this specifically in the rules? They don't; it's left entirely up to the DM (and/or players, depending). But let's say that Session 0 resulted in a very loose sketch of each PC. They have a their Traits, Ideals, Bonds, and Flaws, and their Background, but no other details. The rest is to be filled in during the course of play.
Is it somehow better if this kind of fictional detail is decided ahead of time rather than during play? I think this is the actual question here. Or perhaps, is it somehow worse to decide such things during play rather than ahead of time?
Anything like this that could make a material difference in play is ideally sorted out ahead of time...but that's ideally, and doesn't reflect reality where people just want to get char-gen over with and drop the puck.
Plan B, and IME the more usual outcome, is to sort it out whenever it first comes up in play. The problem, of course, is that doing so can sometimes put a 15-minute hole in the session while we do it.
2) Do players in your game ever act with a mind to their current HP and/or other resources? I mean, does the Fighter get more cautious when his HP get lower? Does he try to save his single use abilities like Second Wind and Action Surge for when they are truly needed?
Isn't this a case of Falstaff acting explicitly with the stats in mind? Shouldn't Falstaff act cautious toward every single attack directed at him because we all know that any attack could be lethal? Only by acting with the metaknowledge of HP and death saves and (except at low level) a whole process that ensures the character doesn't simply die outright from a gnoll hitting him in the head with a flail (!) does the character boldly wade into combat with no fear.
Which is fine.....I want Fighters to boldly wade into combat with no fear. I don't mind how HP and death saves and related mechanics work.
So do I, and any character always has a reasonably good idea of how badly she's hurt and-or fatigued. Players speak in numbers*, of course, but in the fiction I always translate it to using words to describe their situation. A fighter who just took a hit from 25 h.p. down to 10, for example, might yell in the fiction "Ow, that hit me hard! Not sure I can take another one of those! Medic!!!".
* - trying to get players to speak in in-fiction words rather than metagame numbers was once a crusade of mine, but eventually I kinda gave up.
But, in this way, isn't metagaming happening in every game, and by every player? Everyone involved knows you're playing a game. It's meant to be played. Why pretend that's not happening?
Paradoxically enough, we have to pretend one thing (the game play) isn't happening in order to better pretend that something else (the fiction) is.
It really is doublethink sometimes.
There are very few instances of metagaming that I can think of that can't be justified in some fictional way after the fact just as easily as they could be before the fact. So the question really does boil down to what are the benefits and drawbacks to establishing fictional elements (such as character knowledge) ahead of play or during play.
Which I think is the interesting part of the discussion, and which relates to the Mother May I topic.
"Metagaming is always cheating" is clearly not true even across all editions of D&D, let alone when we start to include other games.
While metagamed results can be often justified in the fiction after the fact, this is by no means preferable in the slightest - all you're doing there is damage control. Justifying it ahead of time (or even at the time, which happens occasionally) takes it out of metagame and pre-sets it in the fiction.
And a very easy example of unjustifiable metagaming: a PC scout is sent ahead to reconnoiter. The other PCs can't see her, can't hear her, and can't communicate with her. She runs afoul of a sentry and dies. The players at the table know she's dead but their characters don't...and so if they act on that player knowledge to do anything differently than had they known the scout survived the encounter with the sentry, that's metagaming that can't be retro-fitted.