Cube $ABCD.EFGH$ have side length 6 units. P is the midpoint of $EH$, Q is the midpoint of $AD$, the angle between $BFPQ$ and $BDG$ is $\lambda$.
My attempt :
1) Because the line of intersection is outside the cube, i translated $BFPQ$ 3 units forward (from my point of view) so it become $DHP'Q'$ and the line intersection after translation is $DO$.
2) I calculated the distance from $B$ to $DO$ and distance from $Q'$ to $DO$, because in order to find the angle between two plane (without relying on normal vector) you must find 2 lines perpendicular to the line of intersection, Those 2 perpendicular lines in this case are $BO$ and $Q'U$
3) When i checked in GeoGebra it turns out that $BO$ and $Q'U$ are skew to each other. That's what caused my answer to be wrong.
My question is : How do i avoid the 2 lines perpendicular to the lines of intersection being skew to each other (avoid $BO$ and $Q'U$ being skew) ? and if i have to translate the skew lines how do i figure out how far do i need to translate one of the line so that the two lines aren't skew anymore ? is there any other easier way to do this ? of course without vector and coordinate.

The two lines must be perpendicular to the line of intersection at the same point. In your case, the simplest thing to do is drawing a perpendicular $UV$ on plane $BDG$ (I don't know if point $V$ in your figure is the one I mean) and compute $\lambda=\angle Q'UV$.
EDIT.
Computing $UV$ and $Q'V$ is not difficult:
in rectangle $DQ'P'H$ you have $UQ'=3\sqrt{\frac{5}{6}}$ and $DU=\frac{5\sqrt6}{2}=\frac{5}{6}DO$;
in equilateral triangle $DBG$ line $UV$ is parallel to $BG$, hence $DV=\frac{5}{6}DB=5\sqrt2$ and $UV=\frac{5}{2}\sqrt2$.