Heat olive oil in a large skillet over medium-high heat.
Add the diced onion and sauté for 3 minutes until translucent.
Add the minced garlic and ground beef to the skillet, breaking the meat apart with a spatula.
Cook the beef until fully browned, approximately 7 minutes, and drain any excess rendered fat.
Stir in the chili powder, cumin, paprika, oregano, salt, pepper, and water.
Reduce heat to medium-low and simmer for 5 minutes until the liquid has reduced and the meat is well-coated.
Wash and thoroughly dry the lettuce leaves to maintain crispness.
Portion the seasoned beef into each lettuce leaf.
Garnish with shredded cheese, diced avocado, sour cream, and salsa.