Heat the broth in a small saucepan until very hot but not boiling, and add the saffron. Turn off the heat and let the mixture sit for at least 10 minutes.
Heat a medium-large, heavy-based pot or Dutch oven (with a good lid) over medium heat until hot, pour in the oil, and then add the rice and sauté, stirring frequently, until a few grains just begin to brown, no more, 3 to 4 minutes. Add the onion and garlic and cook 1 minute, stirring constantly. Turn the heat to high, add the saffron broth and salt, bring to a boil, cover, turn the heat down to very low, and cook for 15 minutes.
Meanwhile, in a medium skillet, fry the bacon until crisp, drain on paper towels, chop finely, and mix with the ham. Pour out the grease from the pan and add the butter. Melt the butter over medium heat, add the pecans, almonds, and pine nuts, and sauté them, stirring frequently until the almonds begin to turn golden brown, 5 to 7 minutes. Don’t overcook the nuts or they’ll be bitter. When the rice has cooked 15 minutes, stir in the bacon and ham, sautéed nuts, and parsley, cover the pot, and take it off the heat. Let the rice steam in the covered pot for 10 minutes. Serve hot.