Using a sharp knife, remove the thin membrane and most of the fat from the lamb.
Cut about 25 tiny slits all over the lamb; insert the garlic slivers.
Combine the oil, lemon juice and rosemary; brush over the lamb.
Let stand at room temperature for 30 minutes.
On a greased rack in a roasting pan, roast the lamb in a 325 degree F oven for 1-3/4 to 2 hours, 25 to 30 minutes per pound, or until the meat thermometer registers 140 degrees F for rare or 160 degrees F for medium.
Remove the lamb to a platter; cover loosely with foil and let stand for 15 minutes.
To make the gravy, skim the fat from the pan.
Add onion and cook over medium heat, stirring often, for 4 minutes or until softened.
Pour in the wine and bring to a boil over medium-high heat; boil for 1 minute, stirring to scrape up the brown bits.
Add the stock and return to the boil; cook 2 to 3 minutes or until reduced to about 1 cup.
Mix the cornstarch with 1 tablespoon water; stir into the stock mixture and cook, stirring, for 1 minute or until thickened.
Blend in the tomato paste.
Taste and adjust the seasoning with salt and pepper.