Preheat the oven to 375°F (190°C). Lightly coat a 9×13-inch casserole dish with nonstick cooking spray.
Wash and peel the russet potatoes, then cut them into evenly sized cubes. Place the potatoes in a large pot and cover them with water.
Bring the water to a boil and cook until the potatoes are fork-tender. Drain thoroughly, then return the potatoes to the warm pot.
Add the butter, cream cheese, sour cream, and milk. Gently fold everything together until the potatoes are creamy while still retaining some texture.
Add the garlic powder, salt, black pepper, 1 1/2 cups of shredded cheddar cheese, and 1 cup of the cooked turkey ham. Fold gently until evenly combined.
Transfer the potato mixture to the prepared baking dish and spread it into an even layer.
Sprinkle the remaining 1/2 cup cheddar cheese and 1/2 cup turkey ham evenly over the top.
Bake the Loaded Baked Potato Casserole for 25–30 minutes, or until heated through and the cheese is completely melted.
Remove from the oven, sprinkle with diced green onions, and serve warm.