In a baking dish, rub the beef with 3 tablespoons olive oil, the garlic, 2 tablespoons thyme and salt and pepper. Cover and refrigerate for at least 8 hours or overnight.
Bring the meat to room temperature. Pat dry, then season with salt and pepper. In a large skillet, add 2 tablespoons olive oil over high heat. Add the meat and cook until browned all over, about 7 minutes. Transfer to a plate; let cool for 30 minutes. Wipe out the skillet.
In the skillet, heat the remaining 3 tablespoons olive oil over high heat. Add the mushrooms and cook for 10 minutes. Stir in the shallots and remaining 3 tablespoons thyme and cook for 1 minute. Season with salt and pepper.
In a pot of boiling water, cook the chard until wilted, 10 seconds. Drain and rinse under cold water; pat dry.
Lay two 18-inch long sheets of plastic wrap on a work surface, overlapping lengthwise. Lay the chard on the plastic wrap to create a rectangle large enough to enclose the meat. Spread two-thirds of the mushrooms on top, leaving a 1/2-inch border. Set the meat in the center. Spread the remaining mushrooms on top. Lift the corners of a long end of plastic wrap and fold the chard over the meat; fold the opposite side over to enclose. Wrap the plastic into a cylinder, twisting the ends tightly to seal. Refrigerate for 30 minutes.
Preheat the oven to 400 degrees . Lay 2 puff pastry sheets on a floured surface, overlapping by half an inch. Roll out to a 15-by-18-inch rectangle; trim to form a 15-inch square. Remove the plastic wrap from the meat and center the meat on the pastry; brush the border with egg. Fold in the short ends, brush with egg, then roll up to seal. Transfer to a parchment-paper-lined baking sheet, seam side down, and brush with egg. Cut 3 vents on top. Refrigerate for 15 minutes.
Bake until golden, 25 to 30 minutes. Tent with foil and bake until a meat thermometer inserted into the center registers 125° for medium-rare, about 10 minutes more. Let rest for 20 minutes.