Move oven rack to middle the position and preheat to 350 degrees F. Grease 8x8-inch pan or other 2-quart baking dishes (I love my oval Le Creuset), and set aside.
MAKE SWEET POTATOES:
In a large saucepan add 1 quart of water, and bring to a boil. Add sweet potatoes and cook until fork-tender, about 8-14 minutes (depending on how big your sweet potato pieces are).
Drain sweet potatoes and transfer to the bowl of a stand mixer along with the butter. Using the paddle attachment, beat sweet potatoes and butter until smooth. Turn mixer off and add in half-and-half, sugar, salt, cinnamon, and nutmeg. Pulse mixer on and off until the mixture is combined. Increase mixer speed to medium and beat until the mixture cools down to at least 80 degrees F, about 5-6 minutes. Add eggs and beat until slightly fluffy, about 2 minutes.
While sweet potatoes are mixing, make the topping. In a small bowl mix together melted butter, brown sugar, flour, and pecans; set aside.
Pour sweet potatoes into the prepared baking dish and smooth into an even layer. Evenly distribute topping over the top and bake until topping is browned, about 35-40 minutes.