I tried several remedies: soaking in boiling water and tea tree oil, vinegar, color-safe bleach. None of them would get those spots out, but I just didn’t want to give it up. So I inspected the curtain closely and saw that the mildew had only taken hold on the bottom four or five inches–the rest of the curtain was perfect. I cut off the offending fabric, did a thin hem and hung it back up, in front of a brand-new liner ($3.50 at Aldi). The whole ensemble was replaced/refreshed for a couple of bucks and looks great. Since the liner is clear, you don’t notice if it hangs out a few inches below the curtain, but it’s generally (once it’s dry) tucked back in the tub anyway.
If you ever find yourself in this predicament, don’t rush to trash your cloth curtain. In the meantime, religiously dry out the liner/curtain after each shower and you may not have to worry about it in the first place!