Zamiast wczytywać od razu całą zawartość pliku, lepiej sprawdzać go linijka po linijce, tzn. w pętli pobierasz dany wiersz pliku do zmiennej tekstowej za pomocą funkcji getline, a potem sprawdzasz, czy znajduje się w nim dana fraza:
std::fstream plik("plik.txt");
std::string tekst;
while(!plik.eof())
{
getline(plik, tekst);
if(!(std::string::npos == tekst.find("Moj tekst")))
std::cout << "ZNALEZIONO FRAZE";
else
std::cout << "NIE ZNALEZIONO FRAZY";
}