Cut roast into cubes and place in a large mixing bowl.
To an immersion blender, add chopped onion, garlic, ginger, and soy sauce. Blend until no chunks remain.
Pour marinade over the meat. Use gloved hands to toss and completely coat the meat. Cover with plastic wrap and place in the refrigerator. Allow to marinate for 30 minutes.
Preparing the Sauce
Line a baking sheet with paper towels and place a wire cooling rack over the top.
Combine all sauce ingredients, except for the cornstarch and water, in a medium saucepan. Whisk occasionally over medium-high heat until sauce begins to bubble. Make a slurry from the cornstarch and water and pour into the bubbling sauce. Whisk occasionally, cooking until sauce begins to thicken. Turn off heat.
Breading and Frying the Pork
Sprinkle 2 tablespoons of the flour over the marinated meat in a large mixing bowl. Use gloved hands to toss together.
Set up dipping station by placing milk in a medium bowl and remaining flour on a plate.
Dip a piece of meat into the milk, then dredge in flour. Continue until all pieces are breaded.
Heat vegetable oil over medium-high heat to 325 F.
Add breaded pork, one piece at a time, to the hot oil. Fry for 3-4 minutes, or until golden brown. Using tongs, turn pieces over and cook an additional 3-4 minutes.
Move to wire rack.
Stir Fry
Add olive oil to a wok over medium-high heat until shimmering. Add onion and both bell peppers to the pan and stir fry for 2-3 minutes.
To the wok, pour in 1/2 of the sauce.
Add cooked pork pieces and more sauce to your liking. You may have some leftover. Add pineapple and gently toss to coat. Heat through.
Notes
We used pork loin for this recipe. Pork neck or pork shoulder will also work. Try to cut the pork into similar sized cubes for even cooking.