Preheat oven to 450 degrees F. Coat the inside of a 9 by 13-inch glass or ceramic baking or gratin dish with 1 tablespoon butter.
Cut 2 thin slices from each lemon half and squeeze juice from remaining lemon.
Mash together remaining 2 tablespoons butter, 1 teaspoon lemon juice, and shallot and season well with salt and pepper. Sprinkle dish with remaining juice.
Cook lettuce in a large pot of salted boiling water for 1 minute. Immediately transfer with tongs to a bowl of ice water to cool. Drain lettuce and cut out ribs, leaving top 1-inch of leaves intact. Spread out 1 lettuce leaf lengthwise on a work surface. Place another leaf on first leaf, overlapping enough to cover any holes (use 2 extra leaves if necessary). Season 1 piece halibut with salt and pepper and place crosswise in center of lettuce. Spread top of fish with 1/4 of shallot butter. Wrap lettuce over fish to form a packet (don't worry if ends aren't covered by lettuce) and transfer to baking dish. Make 3 more packets in same manner, arranging them close together in baking dish.
Top each packet with a lemon slice. Cover packets with a sheet of waxed or parchment paper, then tightly cover dish with foil.
Bake in middle of oven until centers of packets are just firm to the touch, 15 to 20 minutes, depending on thickness of fish. Serve with pan juices poured over packets.