Trim any thick pads of fat from the ribs and pat them dry with a paper towel.
In a large pan, heat 2 tablespoons of olive oil over medium-high heat. Add the ribs and cook until golden brown on both sides, about 4 to 5 minutes per side. If you need to do a second round to accommodate all the ribs, add another tablespoon of olive oil to the pan first. Remove the browned ribs from the pan and set them aside.
In a large pot over medium-low heat, add 2 tablespoons of olive oil and the onions. Cook, stirring often, until the onions are soft and translucent, about 5 to 6 minutes. Add the garlic and red pepper flakes and cook for 2 more minutes, stirring often.
Add the wine (if using) and increase heat to medium-high. Cook, stirring occasionally, until the liquid is almost fully reduced, about 5 minutes.
Lower the heat to medium-low, stir in the tomato paste and cook for 1 more minute.
Add the whole tomatoes and all their juice and use a wooden spoon or potato masher to gently smash them into the mixture. Add the crushed tomatoes and stir to fully incorporate. Submerge the browned ribs into the sauce. Add the bay leaf, salt and pepper and bring the sauce to a boil over medium-high heat.
Once boiling, reduce the heat to low and cover the pot, using a spoon or spatula to prop up one side of the lid, just a bit. Let the sauce cook until the meat is pull-apart tender, with some falling off the bone. This will take between 2 ½ to 3 hours. Stir every 15 to 20 minutes to prevent burning on the bottom of the pot.
To serve, remove the ribs from the sauce and transfer them to a serving dish. Tear or chop the fresh basil into small pieces and sprinkle it over the ribs and the remaining sauce. Toss the sauce with cooked pasta or spoon it over mashed potatoes, then place the ribs on top and add more sauce as desired.
Store leftovers in an airtight container for up to 4 days. The sauce and ribs may also be frozen for up to 3 months. Thaw overnight in the refrigerator before reheating.
