Cut potatoes into 1-inch chunks and thinly slice the onion into half-moons. In a large bowl, combine the cut potatoes, sliced onion, sea salt, freshly ground black pepper, lemon zest, lemon pepper, and smoked paprika. Toss everything together until the potatoes and onions are evenly coated with the seasonings. This ensures flavors distribute throughout the dish as it cooks.
In a small bowl, combine the non-dairy sour cream, fresh dill (finely chopped), garlic powder, onion powder, and minced chives. Stir until well blended and set aside at room temperature. I like to prepare this ahead of time so it's ready to dollop on immediately after grilling—the cold cream will slightly cool the hot potatoes while adding a creamy tang.
Preheat your grill to medium-high heat. Tear off two large sheets of heavy-duty aluminum foil. Divide the seasoned potato mixture from Step 1 evenly between the two foil sheets, mounding them in the center. Cut the margarine into small pats and distribute evenly over each potato mound. Fold the foil sheets to create sealed pouches, leaving a little air space inside for steam circulation.
Place the sealed foil pouches directly on the grill grates over medium-high heat. Grill for 20–30 minutes, turning the pouches halfway through to ensure even cooking. The potatoes are done when they're fork-tender and golden at the edges. I like to carefully open one pouch after about 15 minutes to check progress—just be careful of the steam that escapes.
Carefully open the foil pouches (watch out for hot steam) and transfer the grilled potatoes and onions to a serving platter or individual plates. Generously dollop the sour cream mixture from Step 2 over the hot potatoes, allowing it to slightly melt and combine with the margarine and potato juices. Stir gently to distribute the creamy topping throughout.