Preheat the oven to 350°F degrees. Line a baking sheet with foil and coat with cooking spray. Prick the potatoes with a fork and place them on a baking sheet. Bake until tender, about 1-1.5 hours. While potatoes are cooling, grease a 9x13-inch glass baking dish or pan. Set aside.
When the potatoes are cool enough to handle, cut them in half and scoop or squeeze out insides into a large bowl. Mash with a potato masher or hand mixer until smooth. Mix in sugar, eggs, butter, evaporated milk, nutmeg, salt, cinnamon, and vanilla. Blend thoroughly and spread into prepared dish.
For the topping, add all of the ingredients into a medium bowl. With a pastry blender or your fingers, combine until the mixture resembles coarse crumbs.
Sprinkle the crumb topping over the sweet potatoes and bake at 350°F for 30-35 minutes or until topping has lightly browned. Let the casserole sit for 5 minutes before serving.
Notes: To prepare ahead of time, make the sweet potato filling a day or two before needed. Spread into a prepared baking dish, cover, and keep refrigerated. You may also pre-make the topping, cover, and refrigerate it. To bake, let casserole sit at room temperature for 30 minutes; then sprinkle on topping and bake as directed.