See https://en.wikipedia.org/wiki/Aperture_Photometry_Tool for an introduction and a download link.
You are quite correct in that a larger circular aperture can be used. Unfortunately that will include a larger amount of sky and increases the likelihood that the sky annulus will itself contain stars as you indicate.
Elliptical apertures really come into their own when measuring galaxies but there is nothing to stop one exploiting that feature in other circumstances.
The best way of doing photometry, in my view, is to use PSF fitting as implemented in DAOPHOT because then one is fairly sure that you are measuring only the absolute minimum of sky and that stars within the sky annulus are properly accounted for. Unfortunately the only code I have yet found is labour-intensive and very hard to script for reliable use.