There is no official answer (as far as I can tell), so I will offer up a possible explanation from my observations.
From watching clips of the events, I noticed that Munchlax actually doesn't swallow the Poké Ball. It enters its mouth and it continues chewing. This is evident because when Munchlax is captured, the Poké Ball is seen where its head is. Munchlax's chewing may have caused the Poké Ball to activate. Whiscash, on the other hand, really did swallow the Master Ball. Whiscash's digestive tract may have slowed down the Master Ball and prevented it from opening. Usually we see Poké Balls hit something before they open. It also may not have opened because there was not enough room in the digestive tract.