Preheat oven to 400° Fahrenheit. Lightly grease baking dish and set aside.
Heat large skillet over medium heat. When pan is warm, add olive oil and swirl pan to coat bottom with oil. Heat oil over medium heat until oil is hot and shimmering.
Add onion, bell pepper, and garlic to hot oil in skillet. Cook, stirring occasionally, until veggies are tender, approximately 5 minutes.
Once onion and bell pepper are tender, add chopped shrimp, paprika, chili powder, and salt to skillet. Stir to incorporate, then cook until shrimp is opaque and fully cooked-through, approximately 5 minutes. When shrimp is ready, remove skillet from heat and set aside.
Heat medium saucepan over medium heat. When pan is warm, add butter and cook until butter is completely melted.
Once butter has melted, add all-purpose flour to saucepan. Whisk ingredients together vigorously for 1 minute or until mixture is lightly golden-brown.
Slowly pour chicken broth into flour-butter mixture. Whisk to combine, and continue whisking until mixture has thickened.
When mixture is thick enough to coat back of wooden spoon, add sour cream, green chilis, and 1 cup shredded cheese. Stir well to incorporate ingredients, and continue stirring until cheese has melted completely. When cheese has melted, remove saucepan from heat and set aside.
Lay flour tortillas out flat on cutting board. Portion approximately ¼ cup of shrimp filling onto each tortilla, then roll tortillas around filling to form enchiladas. Place rolled enchiladas seam-side down in greased baking dish. Repeat until all enchiladas have been formed and placed in baking dish.
Pour cheese sauce evenly over tops of enchiladas to cover, then sprinkle 1 cup shredded cheese evenly over cheese sauce.
Place baking dish in oven and bake, uncovered, 30 minutes, or until enchiladas are golden brown and sauce is bubbly. Carefully remove baking dish from oven. Divide enchiladas onto serving plates, top with chopped cilantro and sliced avocado if desired, and serve warm.