I am not entirely certain why you call this a short-cut solution except maybe for the possibility of reducing the dimension of the problem when singular matrices are involved, but I believe such a solution would go as follows.
If this:
$X^TLXv=\lambda\cdot X^TDXv $
Then we have:
$ X^T(L-\lambda D)Xv=0$
If the columns of $X$ can be made D-orthogonal such that for some $Y \in \mathbb{R}^{p \times p}$
$Y^T X^T \cdot D \cdot X \cdot Y = I$
Then the equation may be transformed with left multiply by $Y^T$:
$ Y^T X^T(L-\lambda D)X \underbrace{ Y Y^{-1}}_Iv=Y^T \cdot 0 = 0$ $ \left[(Y^T X^T)L(XY)-\lambda I \right] Y^{-1}v=0 $
Substituting $Z=XY$ and $u=Y^{-1}v$ it becomes the regular symmetric eigenvector equation: $(Z^TLZ-\lambda I)u=\mathbf 0$
It is then necessay to find Y that diagonalizes the given the $p \times p$ symmetric matrix $Q=X^TDX$ so that $Y^TQY=I$ This is possible if Q is not singular. Assuming for now that $Q$ is not singular, from the symmetry of Q (and I am also supposing that the entries are not complex), there exists a non-singular normal matrix $P$ such that $PP^T=I$ and $P^TQP=D_Q$ with $D_Q$ diagonal. Once such $P$ and $D_Q$ are found, to find $Y$ one need only scale for the diagonal elements of $D_Q$ symmetrically from left multiple and right multiple by a diagonal matrix. Symmetry is then preserved, but if complex values are required to scale the $D_Q$ in such a symmetric manner, the resulting eigensystem equation becomes complex, and loses the property of being Hermitian. Otherwise, the system remains real and symmetric.
As for the question of the rank of $Q$, I believe it is not singular so long as the columns of $X$ are independent and the original diagonal matrix $D$ has no zero entries. At this time I have no good argument for that statement and invite anyone to show why it is or why it is not true.