Peel and finely chop the onion and garlic. Put the onion in a 4-quart saucepan with the olive oil. Place over medium-high heat and sauté, stirring occasionally, until the onion turns a rich golden color, about 5 minutes.
While the onion is sautéing, cut the core from the Savoy cabbage and finely shred the leaves. When the onion is done, add the garlic and stir for about 1 minute. Add the cabbage and season lightly with salt. Lower the heat to medium and cook until the cabbage wilts, 5 to 10 minutes.
While the cabbage is cooking, cut the fennel lengthwise into 2 quarters, then thinly slice crosswise. Once the cabbage is wilted, add the fennel. Coarsely chop the tomatoes and add them to the pan. Add the beans and season with salt and pepper. Cook until the tomatoes are reduced and no longer watery and the cabbage and fennel are tender, 25 to 30 minutes. Serve hot with good crusty bread.
This dish can be made 1 to 2 days ahead and kept in the refrigerator.