Trim and clean the leeks thoroughly, then halve them lengthwise.
Heat oil or butter in a large skillet over medium heat. Place leeks cut-side down and cook until lightly golden, about 3–4 minutes. Flip briefly to brown the other side.
Add white wine, vinegar, stock, and minced shallots to the skillet. Cover and simmer on low heat until leeks are tender, about 25 minutes.
Remove leeks and keep warm. Increase heat to medium-low.
If using, stir in heavy cream and simmer for 2 minutes.
Off heat, whisk in cold butter cubes a few pieces at a time until the sauce is smooth and emulsified. Do not boil.
Stir in lemon juice, season with salt and white pepper to taste.
Arrange leeks on a serving platter, spoon the beurre blanc over them, garnish with chopped chives or parsley, and serve immediately.