Cook beef over medium high heat 6 to 8 minutes, add onion, garlic, taco seasoning, and water, simmer until saucy, season, keep warm.
Melt butter, whisk in flour 1 minute, slowly add milk, cook until sauce thickens.
Stir in cream cheese, cheddar, and Monterey Jack until melted, add peppers, tomatoes, and seasonings, keep warm.
Heat taco shells at 375°F for 3 to 5 minutes until crisp.
Fill shells with beef, spoon cheese sauce on top, add extra cheese if desired.
Bake 2 to 3 minutes until melted, garnish with cilantro, serve with sour cream and hot sauce.