I don't see why you can't have AI that uses projectile weapons with limited ammo. Currently if they begin to get damage, they may recognize that and try to SC out, and they could do the same thing once they run out or low of ammo. The trick is to get them to aim well and be conservative with their firing, so it's not a quick retreat.
But as pointed out in another thread, there has to be some believability of the AI you encounter, and having weaknesses or limitations they have to deal with is one of those things.
Because the game AI is unable to anticipate the flow of battle like a human player can. It can only react to the current set of parameters. A human might fire off 80% of their missiles and then stop because he wants to save the last salvo for an opportune moment, or they might notice they're running low on ammo on their multicannons and decide to fire only when lined up for a sure hit, or even let their buddy finish the target off so they can conserve ammo. NPCs usually do not harbor such considerations. If you're within firing parameters, they will fire.
You will notice the NPC combat AI has a set of predictable, fixed flight and engagement patterns; for example, at present they will never do a 180 and engage in a head-on pass if you keep pinging them with weapons with their shields down - even when at long range and ineffective they'll be in full evasive mode and trying to get away. Also, if they are coming at you and you drop their shield in a jousting match, they will drop into evasion mode, even though your hull is at 20% and theirs at 100%.
It IS possible to make the combat AI take into account more factors and create a better illusion of planning, but I don't think they'll let NPC ships run dry with *all* of their weapon systems like a human player can.