Pat the fish fillets dry with paper towels and season both sides with salt and pepper. Set aside.
Heat olive oil in a large, deep skillet over medium heat. Add garlic and cook until fragrant, about 1 minute.
Add all the spices (paprika, cumin, caraway, cayenne) to the oil and stir quickly to create a paste. This blooms the spices and releases their flavors.
Stir in tomato paste and cook for another minute.
Add diced tomatoes, bell peppers, and water. Bring to a simmer and cook for 10 minutes until the sauce starts to thicken.
Carefully place the fish fillets into the sauce, spooning some sauce over them.
Cover and simmer for 8-10 minutes, or until the fish is cooked through and flakes easily.
Garnish with fresh cilantro before serving.