BFGS vs L-BFGS -- how different are they really?
No, they're not the same.  In some sense, L-BFGS is an approximation to BFGS, one which requires a lot less memory.  BFGS and L-BFGS are explained in great detail in many standard resources.

Very crudely, you can think of the difference like this.  BFGS computes and stores the full Hessian $H$ at each step; this requires $\Theta(n^2)$ space, where $n$ counts the number of variables (dimensions) that you're optimizing over.  L-BFGS computes and stores an approximation to the Hessian, chosen so that the approximation can be stored in $\Theta(n)$ space.  Effectively, L-BFGS uses the approximation $H \approx M^\top M$ for some $k \times n$ matrix $M$ (I think).

Each step of L-BFGS is an attempt at approximating/guessing what the corresponding step of BFGS would do.  However, a single step of L-BFGS takes a lot less space and time than a single step of BFGS.  Consequently, you can do many more steps of L-BFGS within a particular time bound than BFGS.  Therefore, you might find that L-BFGS converges faster, because it can do so many more iterations within a given amount of time than BFGS can.

I don't know what a nonsensical minimum means, or why BFGS would converge to something worse than L-BFGS if both were allowed to run for an unbounded amount of time.