Heat a wok or a sauté pan over medium-high heat. Add about 3 tablespoons of oil. Sauté garlic and onion until softened, about a minute.
Add carrots and green beans. Cook until tender-crisp, about 3 minutes.
Add cabbage and cook until slightly wilted for about 3 minutes, stirring frequently for even cooking.
Add bean sprouts and cook until slightly wilted, about 2 minutes.
Season the vegetables with salt and pepper to taste. Add soy sauce and fish sauce. Toss them together. Taste and adjust seasoning as needed.
Turn off the heat, then add scallions and cilantro.
Transfer the filling to a strainer set over a bowl. Let it cool down for about 15 minutes.
Peel the wrappers carefully, one at a time, as you go along. They dry up quickly, so work fast or cover them with a damp paper towel.
Set a wrapper in a diamond shape and spoon about ⅓ cup of the filling across the lower half of the wrapper, forming a 3.5-inch log.
Fold the bottom of the wrapper over the filling and fold the sides inward.
Roll it tightly from the bottom to the top, forming a neat spring roll.
Seal the end of the wrapper with water to secure the roll. You can also use water with cornstarch or egg wash, depending on the type of wrappers you are using.
Repeat the process with the remaining filling and wrappers. If making ahead, you can freeze them to fry later.
Set a saucepan or wok over medium-high heat (about 350° F). Add enough oil to submerge the spring rolls. Deep-fry them in batches until golden brown, turning as needed, for 5-6 minutes.PRO TIP: For lumpia that stays crispy for a longer time, begin by frying them in hot oil at a high temperature. After they start sizzling, lower the heat gently to allow the lumpia to crisp up completely without browning too quickly, keeping them perfectly crunchy for an extended period. Drain them on a paper towel-lined plate or a wire rack. Serve them hot with your favorite dipping sauce.