Ok, here's the more detailed description of the problem I see:
Kernel is tuple (timestamp, utxoParams). Let's consider timestamp is measured in seconds, and new block is just arrived. So, instead of computing new kernel each second, greedy forger can iterate over 2*60*60 = 7200 hashes to find the best one(and btw, it's better to start iteration from current_time+2, as target is better there).
First of all sorry for the delayed answer

I'm not exactly sure of what you mean so tell me if I misunderstood anything.
Timestamp is indeed measured in seconds. You (generally) don't need to wait for the last block because unlike Bitcoin, the hash of the previous block is not included in the kernel.
I'm not sure what you mean by "the best one" nor why the target would be better at current_time+2, could you please elaborate?
Why can't a miner gain any advantage by behaving this way?
I'm not 100% sure I got your argument, so correct me if I'm not answering your question

When the greedy miner iterates over the 7200 possibilities, he's not going through more possibilities than he would've normally had gone through. He's only going through them earlier.
If a time t=0 he goes through the 7200 possibilities (t=0 to t=7200), and at time t=1200 he goes through the next 6000 possibilities (t=1200 to t=7200), he will create valid proofs for the exact same timestamps.
So he cannot create more blocks than he should've.
He can however broadcast them in advance. But what would that do for him?
NeuCoin (like Peercoin) does not use the longest chain rule. It actually uses the most
trust rule.
We could detail the design of the trust rule but basically, when you mine a block, the score of the block depends on the current difficulty (or target, the two are of course directly linked) and it is retargeted
at every block.
So let's imagine a scenario where one greedy user owns 5% of the coins. Since NeuCoin's blocktime is 1mn, he will in average mine 6 blocks in the next 2 hours.
Let's imagine he mines at timestamps= 130, 2142, 2686, 3227, 6764, 6866
The rest of the network will mine its first 6 blocks at timestamps= 60, 120, 180, 240, 300, 360 (for example)
Two scenarios:
- The greedy miner and the rest of the network mine on different branches.
The greedy miner's fork will be orphaned extremely quickly even if he broadcasts all his blocks at once and the rest of the network acts normally. The reason is that the network's fork will have a much larger cumulated trust even though both forks have the same length. - They both mine on the same branch. Then nothing happens, the attacker gets his rewards in advance but I don't see why this would be an advantage.
Of course everybody could broadcast their blocks 2h in advance this wouldn't change anything in practice.
I'm not sure I've answered your question so let me know if I haven't

Well, if alternative chain has longest length, why it should be rejected?
It wouldn't be.
And in many cases, contribution to multiple chains couldn't be easily caught.
The goal is not to prevent miners from broadcasting a fork using duplicate proofs (i.e. broadcasting a large number of blocks at once), what we prevent is people trying not to get orphaned in case of a natural blockchain fork by mining on both chains and broadcasting a block on both chains.
I'm not sure I got the rest of the scenario, if you'd care to expand, that'd be great!