Bring the tomatoes, carrots, and onion to a boil over medium-high heat in a stockpot, then reduce heat to medium-low. Simmer for 30 minutes. Stir in the chicken broth, sugar, and salt.
Melt the butter over medium-low heat in a small saucepan. Whisk in the flour, stirring until thick. Slowly whisk in the milk until smooth. Cook and stir, whisking constantly until thickened, about 5 minutes, then stir milk mixture in to the stockpot. Season with basil, celery salt, black pepper, and garlic powder. Continue to simmer the soup on low to reduce and thicken, about 1 hour.