In a large saucepan of boiling, salted water, add the potatoes and cook until tender, about 30 minutes. Drain the potatoes and then let stand until cool enough to handle. Peel the potatoes and, using a potato ricer or masher, rice the potatoes on a baking sheet, and then let stand to air-dry and cool completely.
In a 12-inch nonstick skillet, heat 3 tablespoons olive oil over medium-high. Add the shallot and cook, stirring, until lightly caramelized, about 3 minutes. Add the spinach and cook, stirring, until it wilts down, all its moisture evaporates, and the spinach begins sticking to the pan, about 8 minutes. Remove the pan from the heat and let the spinach cool completely.
Meanwhile, make the tomato sauce: Combine both tomatoes, the thyme leaves, and sugar in a blender and purée until smooth. Scrape the sauce into a bowl, season with salt and pepper, and refrigerate until ready to use, at least 1 hour.
Place the tofu in a fine sieve set over a large bowl and, using a rubber spatula, press it through the sieve. Add the cooled potatoes and spinach to the tofu along with the flour, semolina, and bread crumbs and stir until evenly combined. Season with salt, pepper, and nutmeg and stir to combine. Using your hands, divide the spinach dough into eighths and form each eighth into a round dumpling.
Heat the broiler. In a 12-inch skillet, heat 2 tablespoons of the olive oil over medium-high. Arrange the dumplings in the skillet and then sprinkle the zucchini in and around the dumplings. Drizzle the remaining 1 tablespoon olive oil evenly over the dumplings and then broil until the dumplings are browned on top and warmed through, about 10 minutes. Remove the dumplings from the broiler and sprinkle with the hazelnuts. Serve the dumplings hot from the skillet with the cold tomato sauce on the side.