For the sauce, cook the onions and fennel in the oil in a large saute pan on medium-low heat for 10 minutes, until the vegetables are soft. Add the garlic and cook for 30 seconds. Add the drained tomatoes, smashing them in the pan with a fork, plus the salt and pepper. Simmer on low heat for 15 minutes. Add the chicken stock and white wine and simmer for 10 more minutes to reduce the liquid. Add the basil, capers, and butter and cook for 1 minute more.
Prepare a grill with hot coals. Brush the swordfish with olive oil, and sprinkle with salt and pepper. Grill on high heat for 5 minutes on each side until the center is no longer raw. Do not overcook. Place the sauce on the bottom of a plate, arrange the swordfish on top, and garnish with basil leaves. Serve hot or at room temperature.