Heat the oven to 350°F and grease a 2-quart baking dish. Drain the canned sweet potatoes in a colander for 10 minutes, then measure 4 cups; drain and gently press the pineapple separately.
Mash the sweet potatoes until mostly smooth. Mix in eggs, filling butter, milk, salt, cinnamon and vanilla.
Fold in the drained pineapple and spread the mixture in the baking dish.
Toss cracker crumbs with the topping butter and scatter over the filling. Bake for 35 to 40 minutes until the crust is golden and the center reaches 160°F.
Let stand for 10 minutes before serving so the fruit-studded filling holds together on the spoon.