After loading natbib, use the etoolbox package and its \apptocmd macro to add \interlinepenalty 10000\relax (which forbids page breaks inside paragraphs) to the definition of \thebibliography.
EDIT: Or even easier, redefine natbibs \bibfont macro.
\documentclass{article}
\usepackage{natbib}
% Variant A
% \usepackage{etoolbox}
% \apptocmd{\thebibliography}{\interlinepenalty 10000\relax}{}{}
% Variant B
\renewcommand*{\bibfont}{\interlinepenalty 10000\relax}
\usepackage{lipsum}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{A01,
author = {Author, A.},
year = {2001},
title = {\lipsum*[1]},
}
\end{filecontents}
\begin{document}
\cite{A01}
\vspace{30\baselineskip}% Try 29\baselineskip instead!
\bibliographystyle{plainnat}
\bibliography{\jobname}
\end{document}