Serpentine, Trebuchet and Ballistae are the best artillery in terms of taking out units IMO. Explosive rounds for cannons, culverins and basilisks reduces accuracy by quite a lot but doesn't actually increase kill much at all. What it does do is throw some units back a bit (1 second stun for some soldiers in a unit in a way), so not really useful.
Experience unfortunately doesn't seem to impact accuracy. Accuracy is set in a file and is a set number, not a floating variable.

The only way to really make artillery useful would be to mod their projectiles.