You have two separate problems, only one of which is really due to this player.
First Problem: “Past performance does not guarantee future results.”
You believe that this player is making their character act out-of-character. You cite the character sheet as evidence that certain behaviors are out-of-character. You seem to have a lot of objections to these behaviors.
Unfortunately, on this, you are wrong. The sole authority on a player-character is that character’s player. If she says that something is in-character, it is, end of story, for one simple reason: everything on her character sheet indicates how she has acted in the past, not how she will act in the future. She’s lawful good and she does something you consider chaotic evil? OK, maybe her alignment isn’t what it used to be, maybe it’s changing—one action shouldn’t change alignment, but ultimately alignment is only an indication of how the character has acted in the past. It may not mean anything for how they will act in the future.
Likewise any other kind of behavior—someone really methodical and careful suddenly acts compulsively and recklessly? Sometimes people do that—because of stress or fatigue or just because different circumstances (or the same circumstances, but with the experience of having gone through them before) elicit different reactions. Sometimes the analytical character’s analysis indicates that the only option is to roll the dice, and that the most important thing they can do is commit to whatever action they undertake—forcing them out of their comfort zone to just pick something and go all-in on it.
The flip-side works the same—the impulsive and reckless character realizes a situation is dangerous and outside their experience, and that what they normally do isn’t going to work so well. Maybe they only realize it because they pick up on friends’ concerns about how they are going to react. Maybe they don’t know precisely how to analyze the situation but get it enough to avoid leaping before they look.
And characters can “meta-game” too! Adventurers know that they are adventurers, they know they’re in dangerous dungeons fighting despicable monsters and devious traps. They, much like their players, want to maximize their odds of survival in that situation. That may lead them to being suspicious of things before them, may lead them to question their default responses, may encourage them to act out of character, and so on.
All of this is fine, it’s expected, it’s a feature and not a bug. The problem here is just in your perception of things. Stop worrying and learn to love the party.
Second Problem: “Do or Do Not; There is No Try.”
I’m actually putting Yoda’s maxim in as the problem here: you’re allowing players to just do, rather than try. Anything the player says is in-character for them, is, but that doesn’t mean that everything that character decides to do is going to work. Characters are allowed to try anything. If there’s a chance of success, make them roll something. If there’s no chance of success—trying to cast a spell they don’t have prepared, or don’t even have the ability to cast in the first place—then just say it fails. Don’t say “your character wouldn’t do that,” say their character tries to do it and nothing happens.
The big case that this seems to be coming up for you is with the player announcing the stats of items and monsters that the character doesn’t know. Don’t let that happen: if she states some fact she’s read from one of the books, make her roll some kind of Intelligence check, with proficiency if applicable. Decide (ideally before she rolls) how difficult it would be to know what she just said. And if she fails, make her wrong. The characters have absolutely no idea what’s in front of them, right? So they won’t know if you change it in response to what she says about it.
You don’t have to tell her, even. “That’s a bag of devouring, it will destroy items we put in it,” “OK, roll an Intelligence check, with proficiency if you’re trained in Arcana,” “I got a 12,” “OK.” And if 12 isn’t good enough—bam, it’s not actually a bag of devouring. It’s a bag of holding with unusual decorations, or it’s something else entirely—maybe it’s not destroying items, but teleporting them somewhere. If they use it as a garbage disposal, maybe they later find enemies equipped with the things they were trying to get rid of. Or, more innocuously, they just find them in a neat pile in a corner of the dragon’s hoard, and realize that she was wrong about the bag.
The key thing is, though, that characters are totally capable of spouting nonsense. They can say whatever they want—but without the stats, they’re just bullshitting, and when they do that, most times they’re gonna be wrong. And if this character is wrong about this kind of thing a lot, then hey, the other characters are going to stop trusting her. You can even roll for her, in secret, and let only her know the result—so the others don’t know when she’s on the level or not.
You should probably tell the players that this is how this is going to go. You should probably warn them that, since you have to make changes on the fly, there is a risk you’ll make a mistake, and make something more dangerous than it was before—you shouldn’t intentionally do that, but it gives the players the idea that there is a cost to this player trying to do this. And if it keeps happening, and is a lot of work for you—which it could be—inform them that it’s limiting how much preparation you can do, and forcing you to slow down the game so they get less done. If it’s really egregious, you could say that you’re going to intentionally make things worse when players say things their characters don’t actually know.
On the flip side, reward them for playing things straight. If a player knows a weakness, but the character doesn’t and therefore the player doesn’t exploit that weakness, there should be a reward for that. In D&D 5e, the inspiration mechanic is designed for this. I wouldn’t let this get to the point that the player in question gets inspiration all the time because they’ve read all the books—that’s not fair to the other characters—but occasionally? Could well be a good idea, to encourage the behavior you want. Or even better, if she announces a weakness, giving inspiration to the other characters when they don’t use it is a decent idea. You could, in a pinch where you don’t want to change things on the fly, just make it a straight-up trade: “Oh, this creature is weak to fire,” “I’ll give everyone inspiration if they ignore that and fight this without fire, or use dice to decide what type of damage to use.” Or even, give everyone but her inspiration, to really drive the point home.
Point is, there are a lot of tools at your disposal. You don’t really need her to agree or play along. And since these behaviors might cost the party, there will be social pressure on her to cut it out.
The alternative to all this is to kick the player out. If they refuse to get along, refuse to play by the rules, and are disruptive, they don’t belong at the table, so don’t let them be there.