There is no way to positively identify a miner that doesn't want to be found. If a node receives a new block, it can't tell whether the sender is the miner or just another node that is passing on the block. Furthermore, it is trivial to use more than one IP address and change the address you send from after each block you mine.
While you can conjure up different technical constructions to this issue, the fundamental fact remains that in a decentralized network like Bitcoin participants are not registered in any way and it is trivial to assume a new identity. Any measures that rely on the identity of a miner/node will therefore be ineffective.
Furthermore, using the suggested "node cannot relay consecutive blocks", means that all miners (and mining pools) have a significant incentive NOT to relay any blocks that they receive. If they relay a block that they receive from someone else, then they are suddenly unable to participate in mining.