First of all why are Pufts allowed to operate doors?
Second of all I observed that if a Puft wants to move to a place beyond a door and that door is closed then the poor guys freezes, even the animation. And never does anything else. I have to reload the save to make him move. Here is a small clip:
Make the interior of your base available to a Puft but put a door in its path and gave that door closed.