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.
gaming.stackexchange.com/users/1719/Invader Skoodge
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.
gaming.stackexchange.com/users/11689/jsnlxndrlv
Endermen can't take some types of block, so make a wall around your house with those materials.
They can't take obsidian but it's hard to harvest, but if you wait for 1.9 Endermen won't be able to carry stone-type blocks.
(Already in 1.9 pre-release 2 they can't)
Last of all: don't look at them so that they won't teleport inside your house!
gaming.stackexchange.com/users/13156/Cabriolaile
It's possible to use a cobblestone generator and pistons to build a self-repairing house.
If you're clever with the redstone you won't spot where the pistons and circuitry is hidden.
Edit: Here is a video example of a stone self-repairing house.
gaming.stackexchange.com/users/16142/Pureferret
Endermen are 3 blocks tall, so: Make a moat full of water as jsnlxndrlv's answer suggests.
Make your house interior
shorter than 3 blocks.
Not three blocks or less, but no higher than 2 blocks! Make your exterior walls from diamond blocks as chichiwauwa09's answer suggests.
They can't get to your house, can't steal blocks, and can't teleport into your house!
So do this, and you're Endermen-proof.
gaming.stackexchange.com/users/33376/cassidy
As of Beta 1.8 or possibly earlier, Endermen cannot grab slabs.
Since you can make blocks out of two slabs stacked on top of each other, you can build structures using double slabs.
It is extra clicking, and slower, but it's Endermen-proof.
gaming.stackexchange.com/users/14438/Broam
It might take a lot of looking (and sometimes hacking, depends which one you prefer) but Endermen can't pick up diamond blocks or bedrock.
Try making your house out of them.
(You can use inventory or map editors to get diamond blocks too, not just bedrock).
gaming.stackexchange.com/users/20476/chichiwauwa09
Enderman can only pick up a very limitted number of block types.
These include: Grass, Dirt, Mycelium, Sand, Gravel, Clay, Pumpkin, Mellons and TNT.
See the article on Enderman - Moving Blocks on the Minecraft Wiki ( http://minecraft.gamepedia.com/Enderman#Moving_blocks ) for a complete list.
Make you house out of any other block and Endermen will not be a problem when it comes to stealing your wall.
gaming.stackexchange.com/users/12654/Thorsal
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?
What's the best way to protect your house from Endermen stealing your walls?
gaming.stackexchange.com
<minecraft-java-edition>
gaming.stackexchange.com/questions/30415
gaming.stackexchange.com/users/11188/Warface
Build a wall outside your house out of materials that Enderman cannot pick up (diamond blocks or bedrock). You can also use a cobblestone generator to build a self-repairing house. Certain types of block is the most valid option to prevent Endermen. Furthermore, moats and other structures could be useful.
Using certain types of blocks could prevent Endermen from stealing the walls. Depending on the current version, Endermen could be stopped using specific structures such as moats.