Pricing is in principle based on supply and demand between the origin and final destination. Presumably there's more demand for JNB-ATL than JNB-NYC, so the latter costs less even though it involves a stop in ATL.
You CANNOT just skip the ATL-NYC leg; your entire itinerary will be cancelled. However, if a separate roundtrip between NYC-ATL costs less than $500, you could save money by buying two separate tickets like so: JNB-ATL-NYC (ticket 1), NYC-ATL (ticket 2), ATL-NYC (ticket 2), NYC-ATL-JNB (ticket 1). Weird, I know.