1. Heat a large skillet over medium heat. Add 1 tablespoon olive oil to pan; swirl to coat. Add bacon; cook for 2 minutes, stirring occasionally. Add shallots; cook 2 minutes, stirring occasionally. Add mushrooms; cook 3 minutes, stirring occasionally. Increase heat to medium-high. Add garlic; sauté 30 seconds. Stir in 1/2 cup beef stock; cook until liquid almost evaporates, stirring occasionally (about 8 minutes). Add spinach; cook 1 minute or until spinach wilts.
2. Preheat oven to 350°.
3. Cut horizontally through center of beef, cutting to, but not through, other side using a sharp knife; open flat, as you would a book. Place beef between 2 sheets of plastic wrap; pound to an even 1/2-inch thickness (about 13 inches square) using a meat mallet or small heavy skillet. Brush beef with 1 1/2 teaspoons olive oil; sprinkle with 3/4 teaspoon salt and 1/2 teaspoon pepper. Spread mushroom mixture evenly over beef, leaving a 1/2-inch border around edges. Roll up beef, jelly-roll fashion. Secure at 2-inch intervals with twine. Brush all sides of beef evenly with remaining 1 tablespoon olive oil; sprinkle with 1/2 teaspoon salt and 1/4 teaspoon pepper.
4. Place beef on a jelly-roll pan. Bake at 350° for 30 minutes. Increase oven temperature to 450° (do not remove beef from oven); bake an additional 25 minutes or until a thermometer registers 125°. Let stand 15 minutes; cut across the grain into 12 slices.
5. Combine remaining 2 1/2 cups beef stock, wine, and thyme, and bring to a boil. Cook until reduced to 1 cup (about 25 minutes). Discard thyme sprigs. Combine 1/4 cup stock mixture and flour in a small bowl, stirring with a whisk until smooth. Add flour mixture to stock mixture. Bring to a boil; cook 1 minute, stirring occasionally. Remove from heat, and stir in remaining 1/4 teaspoon salt, remaining 1/4 teaspoon pepper, butter, and truffle oil. Serve sauce with beef.