Stress energy tensor of a perfect fluid and four-velocity In the following demonstration, there is an error, but I cannot find where. (I explicitely put the $c^2$ to keep track of units).
We consider a metric $g_{\mu\nu}$ with a signature $(-, +, +, +)$ :
$\boxed{g_{\mu\nu} 
= \begin{pmatrix}
-c^2 & 0 & 0 & 0 \\ 
0 & 1 & 0 & 0 \\ 
0 & 0 & 1 & 0 \\ 
0 & 0 & 0 & 1
\end{pmatrix}}
\qquad\qquad
\boxed{
g^{\mu\nu} 
= \begin{pmatrix}
\frac{-1}{c^2} & 0 & 0 & 0 \\ 
0 & 1 & 0 & 0 \\ 
0 & 0 & 1 & 0 \\ 
0 & 0 & 0 & 1
\end{pmatrix}}
$
The tensor of a perfect fluid is:
$
\boxed {
\begin{aligned}
T^{\mu\nu} &= \left(\rho c^2+P\right)u^{\mu}u^{\nu}+Pg^{\mu\nu}\\
T_{\nu}^{\mu} &= \left(\rho c^2+P\right)u^{\mu}u_{\nu}+P\delta_{\nu}^{\mu}\\
T_{\mu\nu} &= \left(\rho c^2+P\right)u_{\mu}u_{\nu}+Pg_{\mu\nu}
\end{aligned}
}$ where $\rho$ is the mass density.
We can easily check that $\rho c^2$ and $P$ have the same unit. 
If we consider only the first component $00$, there is no pressure $P$ involved (I consider a cosmological case where the fluid is at rest in comoving coordinates). The only solution to have that is that  $u^0u^0=-g^{00}$, so that the contravariant perfect fluid tensor become :
$T^{00} = \left(\rho c^2+P\right)u^{0}u^{0}+Pg^{00}=\left(\rho c^2+P\right)\times{-g^{00}}+Pg^{00}=-\rho c^2 g^{00} = -\rho c^2 \times -\frac{1}{c^2}=\rho$
which is the expected result. So, to have the expected result, one should have $\boxed{\left(u^0\right)^2=+\frac{1}{c^2}}$.
Now come the weird part.
The metric can be written:
$ds^2=g_{\mu\nu}dx^{\mu}dx^{\nu}=-c^2dt^2+dx^2+dy^2+dz^2=dt^2\left(-c^2+\frac{dx^2}{dt^2}+\frac{dy^2}{dt^2}+\frac{dz^2}{dt^2}\right)\approx-c^2dt^2$
which is equivalent to :
$\frac{dt^2}{ds^2}\approx-\frac{1}{c^2}$
which means :
$\boxed{\left(u^0\right)^2=-\frac{1}{c^2}}$
So we clearly have a problem of sign here between the two expressions of $u^0$.
QUESTION: where is the mistake ?
 A: A perfect fluid is defined by the property that, in the local rest frame, it allows no energy fluxes and no anisotropic stresses. Thus, at a given space-time point, in the local rest frame [in which the components of the 4-velocity are $u^{\alpha} = (1, 0, 0, 0)^{\mathsf{T}}$], the energy momentum tensor components are $T^{\alpha\beta} = \mathrm{diag}(e, p, p, p)$ where $e$ is the local energy density, $p$ is the pressure in the local rest frame. So in general coordinates, the form of the energy-momentum tensor (as you have written) is 
$$T^{\alpha\beta} = (e + p)u^{\alpha}u^{\beta} + pg^{\alpha\beta}.$$
Assuming units where $c = 1$. As you have correctly pointed out
$$T^{00} = (e + p)u^{0}u^{0} - p = e,$$
where you have correctly shown $u^{0}u^{0} = 1$. 
Now, the mistake comes from the way you have derived the four-velocity from the expression for the metric. The correct way to derive the four-velocity here is to first write the four-velocity as  
$$u^{\alpha} = \frac{\mathrm{d}}{\mathrm{d}\tau}(x^{0}, x^{i})^{\mathsf{T}},$$
which gives
$$u^{0} = \frac{\mathrm{d}t}{\mathrm{d}\tau} = \gamma.$$ 
Then of course, in the fluid rest frame we get $(u^{0})^{2} = 1$ as before.
I hope this helps.

Edit. To address your comments:
For a particle with fixed spatial coordinates $x^{i}$, the interval elapsed as it moves
forward in time is negative, $\mathrm{d}s^{2} = −\mathrm{d}t^{2} < 0$. This leads us to define the proper time  via
$$\mathrm{d}\tau^{2} = -\mathrm{d}s^{2}.$$
The proper time elapsed along a trajectory through space-time will be the actual time measured by an observer on that trajectory. Some other observer, as we know, will measure a different time.
A path through space-time is specified by giving the four space-time coordinates as a
function of some parameter, $x^{\mu}(\lambda)$, where typically for time-like paths the most convenient parameter to use is the proper time $\tau$. So we can write 
$$\tau = \int \sqrt{-\mathrm{d}s^{2}} = \int \sqrt{-g_{\mu\nu}\frac{\mathrm{d}x^{\mu}}{\mathrm{d}\tau}\frac{\mathrm{d}x^{\nu}}{\mathrm{d}\tau}}\mathrm{d}\tau,$$
The tangent vectors $u^{\mu} = \mathrm{d}x^{\mu}/\mathrm{d}\tau$, are our four-velocities and these can be automatically normalised so we have 
$$g_{\mu\nu}u^{\mu}u^{\nu} = u_{\mu}u^{\nu} = -1.$$
To convince your self of this you can consider the above expression in the fluid rest frame. Here, we have $\gamma = 1$ and $u^{i} = 0^{i}$. Thus, $u^{\mu} = (1, u^{i})^{\mathsf{T}}$. Now, again considering the rest frame of the fluid, we can clearly see 
$$u^{0}u^{0} = 1.$$
Again, I hope this helps.
