What's the best way to protect your house from Endermen stealing your walls?
Since Endermen are capable of picking up blocks, they can pick up your blocks from your house.
What's the best way to prevent Endermen from stealing your blocks?
Solution 1:
Endermen take damage from water. So: surround your house with a moat. As long as every floor tile on the same side of the moat as your house is sufficiently illuminated (i.e., within 7 blocks of a torch, 8 blocks of glowstone, close to burning netherrack, etc.), Endermen should not be able to get to your house to disassemble it.
Bear in mind that, generally, the roof of your house is probably also a valid place for Endermen to spawn—put torches up there, too!
Note that lava is also an effective deterrent, but it will also destroy any dropped items from enemies.
Update (October 3, 2012): a mere moat is no longer sufficient. My current strategy for preventing harassment by endermen to build my house with a diagonally sloping roof and put a water source block at the uppermost point, completely submerging my house in running water; the interior contains only a nether portal in waist-deep water. The nether portal emerges into an enclosed tunnel that spirals down into the depths of the nether and is heavily illuminated, where a second portal returns you to the real world in my actual subterranean home.
Solution 2:
Put vines on the outside of your house. Instead of grabbing blocks from your house, they will grab the vines, and the vines will just grow back. It's a self-preserving defense mechanism against endermen.