Heat the oil over medium-high heat and add the onion, celery, carrot and 1 tsp salt. Cook until vegetables are soft and onion is starting to brown, about 15 minutes.
Stir in garlic and cook 1 minute before adding lamb and remaining 1 tsp salt.
Cook until lamb renders its fat and browns, about 15 minutes. Don't rush this step, as it's a key flavour builder. Add tomato puree and cook until it turns a shade darker, another 10 minutes. Again, don't rush - this caramelizes the tomatoes and takes away the raw, acidic flavour. Stir in chicken broth, reduce to a bare simmer, and cook covered for 20 minutes.
Serve with torn mozzarella and fresh basil, if desired.