Po wielu eksperymentach i drapaniu się po głowie odkryłem przyczynę tego zachowania. Okazało się, że dokumenty w omawianym zbiorze mają atrybut „język”. Najwyraźniej obecność i wartość tego atrybutu sprawiły, że tych dokumentów nie można przeszukiwać. (Wartością było 'ENG'. Możliwe, że zmiana go na 'eng' sprawi, że ten dokument będzie ponownie możliwy do przeszukiwania. Pole to jednak służyło zupełnie innym celom). Po zmianie nazwy pola na „lang” udało mi się znaleźć dokument zawierający słowo „psy”, wyszukując „pies” lub „psy”.
Zastanawiam się, czy jest to oczekiwane zachowanie MongoDB - czy obecność atrybutu języka w dokumencie wpłynie na wyszukiwanie tekstu.