01 - In a shallow dish, whisk together the all-purpose flour, kosher salt, black pepper, and smoked paprika until evenly combined.
02 - Pat the cube steaks dry with paper towels. Dredge each steak through the seasoned flour mixture, pressing lightly to adhere the coating, then shake off any excess. Transfer to a clean plate.
03 - Heat the vegetable oil and 1 tablespoon of the butter in a large lidded skillet over medium-high heat until the butter begins to foam. Carefully add the coated steaks in a single layer, working in batches if needed to avoid crowding. Sear for 2 to 3 minutes per side until a deep golden-brown crust forms. Remove the steaks to a plate and set aside.
04 - Reduce the heat to medium. Add the remaining 1 tablespoon of butter to the same skillet. Add the sliced onion and cook, stirring occasionally, for about 5 minutes until softened and lightly caramelized. Add the sliced mushrooms and continue cooking for 3 more minutes until they release their moisture and begin to brown.
05 - Pour in the beef broth and Worcestershire sauce, using a wooden spoon to scrape up any browned bits from the bottom of the skillet. Bring the liquid to a gentle simmer.
06 - Return the seared cube steaks to the skillet, nestling them down into the onion and mushroom mixture. Reduce the heat to low, cover with the lid, and let simmer gently for 30 to 35 minutes, or until the beef is fork-tender.
07 - If using, stir the heavy cream into the gravy during the final 5 minutes of cooking for a richer, silkier sauce. Taste the gravy and adjust salt and pepper as needed. Serve hot, ladling the onion-mushroom gravy generously over each steak.