For the marinade: Whisk the oil, Worcestershire sauce, lime juice, chile powders, cumin, garlic powder, oregano, pepper, salt and thyme together in a large bowl. Add the beef, making sure every piece is evenly coated. Cover and refrigerate overnight.
For the machaca: Heat the oil in a large pot over medium-high heat. Drain the beef, pat it dry and then sear in batches until browned on all sides. Remove to a plate. Add the water, tomatoes, cumin, oregano, hot sauce and some salt and pepper to the pot and bring to a boil, scraping the browned bits off the bottom of the pan.
Return the beef to the pan and reduce the heat to low. Cover and simmer until the meat is fork tender, about 2 hours.
Remove from the heat and pull out the meat, shredding it with forks. Return the meat to the pot and bring to a simmer over medium heat, uncovered. Reduce the liquid until very thick, almost dry, about 1 hour. Season with salt and pepper.
For the tacos: Take a warm tortilla and fill with 3 tablespoons of the machaca beef. Fold the tortilla over and close with two toothpicks along the sides. Continue with the remaining tortillas.
Fill a large heavy-bottomed saucepan with enough oil to fill the pan about a third of the way. Heat over medium heat until a deep-frying thermometer inserted in the oil reaches 350 degrees F. (If you don't have a thermometer, a cube of bread will brown in about 3 minutes.)
Fry the tacos in batches until golden brown and the shell is hard, about 3 minutes on each side. Set aside on a tray lined with parchment paper. Remove the toothpicks and fill each taco with cheese, lettuce and tomato.