I know in previous questions you always have someone mention water bottler, this is NOT a good method at all for the following reasons:
- Cat relates YOU to the water bottle, you're the bad guy.
- Cat knows you control the water bottle so will continue to do bad behaviors when you're gone.
Some ideas:
Double sided sticky tape - place the sticky tape on your shelves, when the cat jumps the sticky-ness will deter him from going there. The idea is for him to assume it's always there so you don't need keep it on the shelves long-term.
Aluminum foil - tape foil to your shelves, the noise it makes once they jump on it will scare them.
[Ssscat][1]Ssscat - motion sensor device that activates once the cat is near it. It sprays air in their face.
Air horn - hide yourself and when the cat jumps on a shelf activate it.
Purchase some cat trees that are taller than your shelves, them being the highest point would be great. Give your cat treats when using their trees.
Have [plenty of toys][2]plenty of toys for your cats to play with on the floor
If possible, keep the cat out of the room when you're not around.
Whatever trick you come up with it mustn't hurt the cat but scare it, and should not make the cat think it's from you. [1]: http://store.petsafe.net/ssscat-spray-deterrent-17 [2]: https://pets.stackexchange.com/a/16372/7526