I'm trying hard to follow you here. Your first statement insinuates that it is possible to build a block that has no solution whatsoever which I think is patently false. In the next statement you conflate a finite pool in which there is a correct answer with being so large as to be infinitely sized. If that is the case then it would possible and even likely that any given block could result in an infinite amount of time being required to solve it. Strangely enough, the network tends to solve blocks at roughly 10 minutes each with no happenstances where the network stalls out because it is going to take infinite years to solve this one. I will concede the point that hash collisions can be found in a sufficiently sized pool.
The solution isn't infinitely hard the set of
possible blocks is so large as to be practically infinite. When solving a block even if one only modifies nonce, merkleroot hash, and timestamp the set of potential blocks is 2^320 this is even larger than the number of potential hashes (2^256) and is a number so large that for all practical purposes (related to mining) can be considered infinite).
I think you might be confused in thinking there is only one possible solution. There is a LOT (once again pretty much infinite) possible solutions which could be the next valid block.
Lastly you seem to think that all blocks must need a solution in order for the next valid (solved) block to be found. That isn't true. MOST blocks have no solution eventually miners will (collectively) by random chance find a block which does have a solution. A particular block is created and then an incrementing nonce is added to the rest of the blockheader. All nonce values are tried and if none of them produce a solution (hash below target based on difficulty) then that block will never have a solution. Miners simply discard that block and attempt a new block (either by changing the coinbase tx or the timestamp).
Every 4 billion attempted hashes you have to change "something" all solutions for the current block (call it block candidate if you like) have been tried. You can't attempt more solutions without changing the block in some manner. Changing the timestamp or merklehash is not materially different than changing the prior block hash (because someone else found a block). There is no progress. You either solve a block or you don't. Each attempt is a random chance like a lottery ticket.
When difficulty is X that means on average miners (globally and collectively) attempted to find solutions for X blocks and failed before finding one which meets the difficulty target.