It wouldn't be the same as drawing cards at all, because the ratios change, especially if people are hoarding cards, but you could just use dice to generate a random number between 1 and however many different colours there are (I forget how many it is now). On a 1, you have to chip in another card. The problem with this approach comes when someone has been keeping a very watchful eye on how many of each colour has been and gone - in this case, they might have a reasonable expectation of a greater chance of success.
Another way to do it might be to just have the tunnels cost one or two cards more. If people are hoarding, they can definitely afford it.
It doesn't seem possible to generate a "fair" solution but I'd consider either of those better than disallowing the action altogether.
Of course, it doesn't seem like this would happen often enough to need a house rule.
In the rare event there is not enough cards available in the draw and discard piles to reveal 3 cards and determine the effect of the tunnel on a player, then only those cards that are available are revealed. If, as a result of players hoarding cards, there are none to be revealed, a tunnel can be claimed without risking additional cards.