Preheat oven to 350 F. Grease a baking dish (I used a 2-quart), and set aside.
To prepare the topping, stir brown sugar, oats, flour, pecans, and cinnamon together.
Stir in melted butter until combined. Set aside.
To make the sweet potato filling, beat eggs in a large bowl.
Stir in sugar, vanilla, and salt until combined.
Add mashed sweet potatoes, half-and-half, and butter; stir until combined. Start with 1/3 cup and add more by the teaspoonful if you want a creamier filling.
Pour the sweet potato mixture into the prepared baking dish.
Crumble the topping over the sweet potato filling.