Your equation $xy^Tu=\lambda u$ needs no transposition, but you should know how to read it: $x,y,u$ are vectors, which makes $xy^T$ a matrix, $y^Tu$ is a scalar, and $xy^Tu$ is a vector that you can either view as the matrix $xy^T$ applied to the vector $u$ (which is how you obtained it) or as the vector $x$ multiplied by the scalar $y^Tu$. The latter point is useful, since it means that in order for the equation to be solved for some $\lambda\neq0$, one needs $u$ to be a scalar multiple of $x$. Since $u$ is an eigenvector it must be nonzero, and we don't care about nonzero scalar multiples, we might as well take $u=x$ in this case, and so $\lambda=y^Tu=y^Tx$, which must be nonzero (if not, then no eigenvalue $\lambda\neq0$ exists). On the other hand the equation is solved with $\lambda=0$ for any vector $u$ such that $y^Tu=0$. This gives two types of eigenvectors; you should be able to check that the dimension of the eigenspaces for $\lambda=y^Tx\neq0$ is $1$, and the dimension of of the eigenspace for $\lambda=0$ is $n-1$, and these are all solutions.
So $xy^T$ is diagonalisable whenever $y^Tx\neq0$, since the eigenvector $x$ for $\lambda=y^Tx\neq0$ is necessarily independent of the $n-1$-dimensional eigenspace for $0$. What if $y^Tx=0$ (which means that the vectors $x,y$ are orthogonal for the standard inner product)? Well, as indicated there are no non-zero eigenvalues, and the eigenspace for $\lambda=0$ is only of dimension $n-1$, so $xy^T$ is not diagonalisable in this case (you may check that its square is zero, so it is nilpotent).