I think that part of what you are looking for is from work of Eilenberg-Moore.
Suppose that all four spaces are simply-connected. On taking cohomology, you get a commutative diagram of graded-commutative rings
$$
\begin{array}{ccc}
H^*(A)&\leftarrow &H^*(B)\\
\uparrow & & \uparrow\\
H^*(C)&\leftarrow& H^*(D).
\end{array}
$$
The simplest possible criterion would be that $H^*(A)$ is a pushout (of graded-commutative rings) in this diagram, or equivalently that the map $H^*(B) \otimes_{H^*(D)} H^*(C) \to H^*(A)$ is an isomorphism.
Unfortunately, the answer is close but not quite that simple - you need a version that involves more homological algebra. Specifically, there is a commutative diagram of cochain algebras
$$
\begin{array}{ccc}
C^*(A)&\leftarrow &C^*(B)\\
\uparrow & & \uparrow\\
C^*(C)&\leftarrow& C^*(D).
\end{array}
$$
and Eilenberg-Moore used this to construct a map out of the derived tensor product
$$
C^*(B) \mathop{\otimes}^{\mathbb L}_{C^*(D)} C^*(C) \to C^*(A).
$$
In the simply-connected case, if $A$ is a homotopy pullback then this map is a quasi-isomorphism.
As one consequence, if $H^*(B)$ or $H^*(C)$ is a projective module over $H^*(D)$, then $A$ being a homotopy pullback implies that a homotopy pullback it satisfies $H^*(A) \cong H^*(B) \otimes_{H^*(D)} H^*(C)$.
So far as the rest of your questions:
You might be able to combine this with the universal coefficient theorem and with the homology Whitehead theorem to get a result. Specifically, if you check it with field coefficients for an arbitrary field then you get your desired result.
Unfortunately there's not a purely algebraic criterion, because being a homotopy pullback won't always be detected by the maps on cohomology; sometimes it will involve delicate analysis of secondary products.
I don't have a nice, complete answer for you about the non-simply-connected case other than carefully looking at what's going on with the fundamental group and universal covers. The Eilenberg-Moore result wlll have issues with "exotic" convergence.
Finally, I'm afraid that I can't really address your desire for references without "weird" spaces, since most of my friends fall into that category. Maybe someone else can help there.

