Preheat outdoor grill to medium heat or indoor oven to 400 degrees. Dice bacon into ½" pieces and add to large skillet. Place over medium heat and cook, stirring frequently until crispy. Remove bacon from skillet and place on paper towel-lined plate to drain.
Slice potatoes and onion between ⅛" and ¼" thick and add slices to a large mixing bowl. Drizzle with olive oil and toss to coat.
Sprinkle with salt, garlic powder and Parmesan cheese then toss to combine. You may cook all of the potatoes in one packet or divide the potato-onion mixture between 4–5 foil sheets for individual servings.
Layer the potato and onion slices intermittently with grated cheese and cooked bacon so that there is cheese and bacon mixed evenly with potatoes and onions.
Drizzle the top of the potatoes with heavy cream and seal packets by folding the edges together and pressing firmly.
Grill 20–30 minutes or bake 40–45 minutes, until potatoes are tender. Open packets carefully to allow steam to escape then season to taste with salt and pepper. Garnish with chopped green onion or chives.