Heat the oil in a large saucepan and add the chopped onion. Cook on a low heat for 5-6 minutes until the onions soften. Add in the garlic and sweet potato then cook for a further minute. Add in the tomatoes, stock, tomato puree and sugar. Bring to the boil, then simmer for 20 minutes, stirring a few times during cooking.
Heat a griddle pan on a high heat. Divide the cheese between two slices of the bread and top with the other two slices. Brush the outsides of the sandwich with the olive oil and place on the griddle. Cook until dark griddle lines appear (about 3-5 minutes) then turn over and repeat. Remove from the griddle and place on a chopping board. Cut into cubes.
By now the soup should be ready. Turn off the heat and blend the soup using a hand blender. Stir in the cream and season to taste with salt and pepper.
Divide the soup between 6 bowls and top with the cheese croutons.