Place the potato chunks in a large pot and cover them with cold water. Add a generous amount of salt.
Bring the pot to a boil and cook until the potatoes are very tender when pierced with a fork.
Drain thoroughly, letting the steam escape to prevent excess moisture.
Mash the potatoes until mostly smooth.
Add the butter and cream cheese, stirring until fully melted and incorporated.
Pour in enough half-and-half to reach a creamy, fluffy consistency.
Season with salt and pepper to taste.
Transfer the potatoes to a baking dish and dot the top with additional butter.
Cover the dish and refrigerate for up to two days.
When ready to serve, bake at 350°F until the potatoes are warmed through and the top is lightly golden, about 30–40 minutes.
Stir gently before serving for the best texture.