Make the meatball mixture. In a bowl, combine the ground meat, breadcrumbs, egg, garlic, ginger, salt, pepper, and soy sauce.
Mix gently with your hands or a fork until just combined. Don’t overwork it or the meatballs will be tough.
Form the meatballs. Scoop into 1 to 1.5-inch balls. You should get about 18–22 meatballs.
Chill them in the fridge for 10 minutes if you have time; it helps them hold their shape.
Whisk the sauce. In a measuring cup, stir together ketchup, vinegar, brown sugar, soy sauce, and pineapple juice. Taste and adjust—add more vinegar for tang, more sugar for sweetness. Set aside the cornstarch slurry separately.
Sear the meatballs. Heat oil in a large skillet over medium-high.
Add meatballs in a single layer without crowding. Sear 2–3 minutes per side until browned. Transfer to a plate; they don’t need to be cooked through yet.
Sauté the vegetables. In the same skillet, add a drizzle more oil if needed.
Cook onions and peppers with a pinch of salt for 3–4 minutes, stirring often, until they begin to soften but still have bite.
Combine and simmer. Pour the sweet and sour sauce into the skillet. Bring to a gentle simmer. Return the meatballs (and any juices) to the pan, nestling them into the sauce.
Cover and cook 6–8 minutes over medium heat until the meatballs are just cooked through.
Thicken the sauce. Stir the cornstarch slurry, then pour it in while stirring. Simmer 1–2 minutes until the sauce turns glossy and coats the meatballs. If using pineapple chunks, add them now and warm through.
Finish and serve. Taste and adjust seasoning—add a pinch of salt, a splash of vinegar, or a sprinkle of sugar to balance.
Garnish with scallions or sesame seeds if you like. Serve hot over rice or noodles.