Preheat oven to 350°F. Place unbaked pie crust on a baking sheet for easy handling.
Heat a skillet over medium heat. Add diced ham and cook for 3-5 minutes until moisture evaporates and ham begins to brown. Transfer to paper towels to drain.
In a large bowl, beat softened cream cheese until smooth. Mix in cooked ham, Worcestershire sauce, hot sauce, garlic powder, and onion powder until well combined.
Spread ham mixture evenly in bottom of pie crust. Sprinkle with half the cheddar cheese and all the chopped green onion.
In the same bowl, whisk together eggs, sour cream, and heavy cream until smooth. Season with salt and pepper to taste.
Pour egg mixture over ham and cheese in crust. Top with remaining cheddar cheese.
Bake for 55-65 minutes until center is just set with slight jiggle and top is golden brown. Cool for 10 minutes before slicing.