To make the filling, in a large skillet, heat the oil on medium-low heat and add the onion and jalapeño. While stirring occasionally, cook until the onions and jalapeño are softened, about 5 minutes. Add the garlic and cook for 30 more seconds.
Add to the skillet the ground beef, chili powder, cumin, oregano, salt, pepper, cayenne, tomatoes, and cilantro. Stir until everything is well combined then turn the heat down to low and simmer while stirring occasionally until the meat is browned, about 15 minutes. Stir in the lime juice and taste and adjust seasonings. Remove from the heat.
To make the tacos, line a baking sheet with paper towels and heat 2 inches of oil to 350°F in a heavy skillet. Take a tortilla and fold it in half into a “U” shape, holding it with tongs in the center. Using the tongs, dip one half of the tortilla, lengthwise, into the hot oil, leaving the other half out of the oil. Fry the first side until crisp, about 10 seconds, and then repeat for the other side, holding the already-cooked side out of the oil. Drain the taco shell on a paper-towel-lined sheet and repeat until all the shells are fried.
To assemble the tacos, take each shell and fill with ground beef, lettuce, tomatoes, and cheddar cheese. Serve with salsa on the side, if desired
Notes
It's best to fry the tacos shells right before eating. If you wish to make them ahead of time, to keep them crisp, re-heat them in the oven at 375°F for 10 minutes before serving. You can also make the meat up to 2 days in advance.