Heat the olive oil in a large skillet over medium heat. Add the diced potatoes and cook, stirring occasionally, for about 10-12 minutes, or until the potatoes are golden brown and tender. You can cover the skillet to help the potatoes cook through faster.
Once the potatoes are cooked, add the diced onion to the skillet and cook for another 2-3 minutes until softened. Add the minced garlic, cumin, chili powder (if using), salt, and pepper, and cook for another minute until fragrant.
Mash the potatoes:
Using a potato masher or the back of a spoon, mash the potatoes in the skillet slightly to create a creamy texture. Adjust the seasoning to taste.
Add cheese:
Remove the skillet from the heat and stir in the shredded cheese. The cheese will melt and make the potato mixture nice and creamy.
Assemble the burritos:
Warm the flour tortillas slightly in a dry skillet or microwave to make them more pliable. Spoon a generous amount of the cheesy potato mixture onto the center of each tortilla. Add a dollop of sour cream (optional) and salsa if desired.
Wrap the burritos:
Fold in the sides of the tortilla, then roll it up tightly from the bottom to form a burrito. Repeat with the remaining tortillas and filling.
Serve:
Serve your cheesy potato burritos warm with extra salsa, sour cream, or fresh cilantro if desired.