It is hard to know the problem if the objective function, constraints and data are unknown. It would be helpful if you can provide them. From the information you provided currently, my guesses are:
BFGS method is not good when the starting points are far from optimal point. Because it moves very slow. You can try other optimization method first, and use the results as starting points for BFGS to refine the results.
Another possibility is that the starting point is a local minimum but not a global minimum. So BFGS cannot move away from the starting points. You may try other starting points.