Define, "Fine," in parts per million. Several times a week, I see a post like this - "Water stats are fine but 2/3 of my fish died in a short time," and learn that "Fine" was defined as some number other than 0. No value above 0 for ammonia or nitrite is fine, so it is important to get this part squared away and sweep out any poor information pet stores and some books give out.
All of your problems sound like they come from an uncycled tank or severe minicycle from adding 20 goldfish to the tank at once - if they're fancy goldfish, that's about 200 gallons of stocking, if they're commons, that's a pretty big pond worth of stocking. Adding the crushed coral and pushing up the pH can also be to blame, as a stable pH of just about any level from 6 to 8 is fine for most fish, but a change in pH is bad for any fish.
Not to mention that I'm going to guess these were cheap $1 goldfish? Those come from notoriously poor stock and aren't cared for well at the store. There's a very real chance you brought in any manner of bacteria or parasites with them.
The 4-6 month rule for tetras only applies to certain species - neons, rummynose. The bigger species like your serpaes are much more hardy and at least some are suitable for controlled fish-in cycling.
You really need to research your remaining fish and any new additions. You had some bad compatibility problems, and still have a few left - three rainbowsharks in a single tank is a time bomb, for example.