naw man thats way too long for the purposes of this game
if anything popped smoke should only last no more than 15 seconds More than that and you'll have way too many smoke clouds lingering.
Artillery smokes should last almost a minute to both be effective and since you won't have too many of those going off at a given time.
as for how to limit them. I don't think there even needs to be an ammo limit for them, on account of how small and cheap smoke nades are. Just give them a nice long cooldown, like 30 seconds. Also maybe set whatever game entity is creating the smoke be subject to damage from missiles, to simulate high explosives dispersing the smoke.
As someone who tanked a lot in bf2 back in the day, and played a number of mods that catered to my tank whoring ways, where everyone had smokes, i can tell you that there was never any smoke abuse. People popped smoke primarily under the same circumstances under which a squid would release ink. i.e. things went ass up and they need to break away. of course though a smoke cloud can't stop a tank round, so that didn't always work out. and in every game i've ever played that involved smoke grenades, people almost always swapped them out for something with more tangible results, like frags or other types of equipment, thus limiting their use. And even if you do have some jackball hiding in his little fortress of smoke as blind as a bat, there is nothing stopping you from shooting into the smoke, or just mosing up with a beatstick mk2 and ruining his day.