Indeed, this doesn't work. The "host" needs to know which door to open that doesn't have the right thing. The extra odds comes from the information the host gives you. If miners just discard blocks at random, it does nothing to help your odd.
To show you the truth of this, imagine that the host doesn't know anything about where the car is. You pick a door, he opens one, then you switch. 33% of the time you'll have picked the right door to start, 33% of the time, the host will open the right door (ending the game early) and 33% of the time you will switch and find the right door. As you can see, your odds didn't go up by switching doors.
When the host picks the right door at the start you win. No more need to switch.
When the host picks the wrong door, then what exactly is the situational difference between this and the monty hall problem? In both cases you've gotten one wrong door open, and two doors closed. That gives you 2/3 of a chance if you switch.
I wrote a C implementation, source here
http://pastebin.com/PN2k6HZPBasically it makes a hash from a random number between 0-99,999, then the number is found via two methods, each run 99 times.
The first method is an implementation of the monty hall problem.
The second method is purely random. Neither ever tests the same number twice.
example output
results for hashes randomly found with doors
found behind door 1: 46
found behind door 2: 53
average number of tries: 48972.77
results for hashes randomly
average number of tries: 52223.12
Most times I ran it the monty hall implementation ran with the lowest average tries, but when the purely random method won it would usually win by a larger margin than the monty hall problem.