Combine the olive oil, garlic, cilantro, chili powder, cumin, cayenne, salt and lime juice in a small bowl.
Add the fish to a sealable container or large plastic bag. Then pour the marinade over the top.
Ensure the fish is coated in the marinade, seal and refrigerate for at least 30 minutes up to 8 hours.
Prepare the fish sauce by combining the mayonnaise and sour cream in a small bowl. Stir until well combined and smooth.
Add the hot sauce, lime juice and garlic powder. Taste and adjust as needed. Cover and refrigerate until ready to assemble tacos
Heat 1 tablespoon of cooking oil in a large non stick skillet over medium high heat. Remove the cod from the marinade and place in the skillet. Cook 3-5 minutes on each side until fish is opaque and cooked through. Remove from the skillet and let rest 5 minutes before flaking or cutting.
Heat corn tortillas in a small skillet or comal until heated through and slightly blackened if desired.
Layer cabbage, cooked fish, and pico de gallo. Drizzle with fish taco sauce and top with crumbled cotija.
Notes
Storage: store leftover cooked fish in a sealed container for up to 3 days. Although fish is best served fresh, you can reheat in the oven by wrapping with foil and baking at 275 degrees F for 8-10 minutes.