Here's what worked for me:
1. Lots of spirited play. This makes kitty tired. And, since kitty sleeps some 16 hours a day already, this may reduce the window of bad behavior to just a few hours a day.
2. Squirt gun. Catch kitty in the act of being bad and give her a few squirts.
As a last resort, I could loan you my dog, Pippa. She'll put your cat in check in a matter of minutes. Then, when the cat actually does come out of hiding, she'll be too paranoid to get comfortable in mischief. She'll be constantly scanning for the pups.
It's a proven formula for naughty kitties!