Prepare the pork: Cut small slits all over the meat with a knife and put skin-side down in a roasting pan. Mix the lime juice and orange juice in a measuring cup. Transfer 1/4 cup juice mixture to a food processor; add the garlic, oregano, 1/2 teaspoon salt and 1/4 teaspoon pepper and pulse to make a paste. Rub over the pork and into the slits. Pour the remaining 3/4 cup juice over the pork; press the bay leaves on top. Cover and refrigerate 3 to 6 hours.
Preheat the oven to 350 degrees F. Turn the pork skin-side up and roast until a thermometer inserted into the middle registers 160 degrees F, about 2 hours, 30 minutes. Cool completely before slicing. (Refrigerate leftover pork in an airtight container up to 1 week.)
Make the sandwich: Cut the bread in half lengthwise. Layer the ham, 3 thin slices roast pork, the salami, cheese and pickles on the bottom half. Spread the mustard on the inside of the top half. Heat a nonstick skillet over medium heat. Butter the outside of the sandwich, then add to the pan and put a heavy skillet on top to weigh it down; cook until golden, 3 to 4 minutes per side (or cook in a sandwich press). Cut in half on the diagonal.
In any Cuban sandwich, mojo-marinated pork is key. Look for bottled marinade in Latin markets, or try this recipe from Tampa's legendary Columbia Restaurant.