Prepare the shrimp filling: Heat olive oil in a large skillet over medium heat. Add the chopped onion and bell pepper and sauté for about 3 minutes, until softened. Stir in the minced garlic and cook for another 30 seconds, just until fragrant. Add the shrimp to the pan and season with chili powder, cumin, smoked paprika, salt, and pepper. Cook for 3–4 minutes, stirring often, until the shrimp turn pink and are just cooked through. Remove from heat immediately to prevent overcooking.
Add creamy mixture: Stir in the salsa (or diced tomatoes), cream cheese, and shredded cheese while the mixture is still warm. Mix until everything is evenly combined and slightly melted together, forming a thick, flavorful filling. Let it cool for about 5 minutes before wrapping to avoid soggy tortillas.
Assemble the chimichangas: Lay a tortilla flat on a clean surface. Spoon about 1/2 cup of the shrimp mixture into the center. Fold in the sides, then roll tightly like a burrito, ensuring the ends are tucked in to seal the filling. Repeat with remaining tortillas and filling.
Fry the chimichangas: Heat about 1 inch of oil in a deep skillet over medium-high heat. Once hot (around 350°F / 175°C), carefully place the chimichangas seam-side down in batches. Fry each for about 2–3 minutes per side, or until golden brown and crispy. Remove and drain on paper towels.
Optional oven finish: For extra crispness or to keep them warm before serving, place the fried chimichangas on a baking sheet and bake at 375°F (190°C) for 5–7 minutes.