Heat 1 teaspoon olive oil in a large skillet over medium heat. Add onion and 3 cloves garlic. Cook, stirring, until translucent, about 5 minutes; remove from heat and let cool.
Preheat oven to 425 degrees.
Remove duck mixture from refrigerator and form into 1 1/2-to 2-inch balls. Transfer to a baking sheet. Transfer baking sheet to oven and cook for 10 minutes.
Heat 1 teaspoon olive oil in a large saucepan over medium heat. Add remaining 2 cloves garlic, 1 shallot, and plum tomatoes. Cook, stirring occasionally, for 2 minutes. Add wine and cook until liquid is reduced by half, about 4 minutes. Add veal stock and thyme; let simmer for 20 minutes.
Strain liquid through a fine mesh strainer set over another large saucepan, discarding solids. Transfer meatballs to liquid and place over medium heat. Let meatballs simmer until cooked through, about 30 minutes.
Heat remaining teaspoon olive oil in a large skillet over medium heat. Add remaining 2 shallots and cook, stirring occasionally, until translucent, about 2 minutes. Add meatballs and their cooking liquid, butter; let cook for 2 minutes.