In a large skillet, heat olive oil over medium-high heat. Season the beef chuck roast with salt and pepper, then sear it in the skillet until browned on all sides, about 3-4 minutes per side. Remove the beef and set aside.
In the same skillet, add diced onion and cook until softened, about 5 minutes. Add minced garlic and cook for an additional minute until fragrant.
Stir in chili powder, cumin, smoked paprika, and beef broth. Bring the mixture to a simmer, scraping up any browned bits from the bottom of the skillet.
Return the seared beef to the skillet, cover, and reduce heat to low. Simmer for 3-4 hours, or until the beef is tender and easily shredded with a fork. Alternatively, you can cook it in a slow cooker on low for 8 hours.
Once cooked, remove the beef from the skillet and shred it using two forks. Stir in lime juice and mix well.
To assemble the tacos, warm the corn tortillas in a dry skillet over medium heat for about 30 seconds on each side.
Fill each tortilla with shredded beef, then top with shredded lettuce, diced tomatoes, cheese, sour cream, and cilantro. Serve immediately.