To make the pork: Arrange the oven rack to fit a large Dutch oven and heat oven to 325°F. Cut 2 pounds pork into 3 or 4 large pieces and season generously with salt and pepper.
Heat 3 tablespoons oil in a large, shallow, oven-safe Dutch oven over medium-high heat. Once shimmering, add the pork and cook until brown and crispy on all sides, about 5 minutes per side. Remove pork from the pot with kitchen tongs and set aside.
Add 1 sliced onion and 7 garlic cloves and season with salt and pepper. Cook, stirring occasionally, until onions are browned. Add 1 bay leaf and 2 cups chicken broth and scrape up any browned bits that are stuck to the bottom of the pan.
Return pork to the pan, cover and transfer to the oven. Let cook until meat easily shreds with a fork, about 2-3 hours.
If you haven't made the slaw yet, toss that together now and set aside.
Meanwhile, make the sauce. Place 3 ancho and 7 arbol chiles in a small saucepan and cover with water. Bring to a boil and simmer until soft, about 10 minutes.
Place softened chiles plus 3/4 cup of their cooking liquid in a blender along with the remaining sauce ingredients. Blend until very smooth. Taste and add more salt if necessary. Pour into a serving bowl.
Heat the refried beans for serving and keep warm.
When the pork is tender, remove it to a large plate or baking sheet and shred with 2 forks into large pieces. Mix in the onions and garlic and transfer to a serving plate. If the meat has gotten too cold, bring the meat cooking liquid back to a boil and spoon some of the liquid over the meat.
To Serve: Spread some warm beans on the tostada shell, then top with pork, arbol chile sauce, slaw, guacamole, and cheese.