You know, I feel the OP's plight.
Way back in my 2e days, I had a gamer who really KNEW the Monster Manuals. All of 'em. It's why he played D&D. And I mean he KNEW the MMs... THAC0, AC, and all. It got pretty bad when I'd throw a few orcs at the group, and he'd have everything about them memorized.
So, I threw a bunch of crocodiles (and giant crocodiles) at the group... and was surprised to see him tell the group: a) their AC. b) The amount of damage they can do. c) Their movement ratings.
Yeah, it was a bit of a surprise... PCs that memorize Monster Books suck.
***
Anyways, a few ideas that haven't already been mentioned -
1) Templates. You can always add one that sufficiently changes the monster around. A Half-Dragon Vampire, for example, is completely different from a Fiendish Vampire, for example.
2) Similarly, class levels. You can even fiddle with things a bit, so that things are ALMOST class levels, but not. For example, that troll sorcerer, rather than being strictly a sorcerer, actually just has a few extra spell-like abilities. No one likes a Hasted Troll.
3) Find monsters online, or in odd sources. I know that means you're breaking away from the Monster Manual, but that's okay. You can still be "traditional" while doing it. For example, I'm sure there are at least a dozen fan-made versions of LOTR Orcs kicking around out there... one of them might even be good. There are a hundred ways to stat up an ogre, and still be "traditional". I'd love to see the look on your players' faces when they say "hey, it's just an orge... CR 3" and then realize they're facing the equivalent of a hill giant.
4) Strange terrain. Monsters in a fight scene where the environment plays an important role can keep the PCs looking away from Monster Stats. For example, fighting two Barghests is a pretty predictable encounter. Fighting those same Barghests during a hurricane is something entirely different.