In a pan, heat oil over medium high heat. Add onions and garlic; cook for 3 minutes, or until fragrant and softened. Set aside.
In a non-stick skillet, heat the sugar over medium heat until caramelized, 3-4 minutes. Add the fish sauce, quickly followed by the fish stock. At this point, the melted sugar will hardened. This is okay. Bring the sauce to a boil and let simmer for 5 minutes, or until sauce has reduced. Stir constantly to melt the hardened sugar.
Add the cooked onions and garlic to the caramel sauce. Bring to a simmer, then add coconut water, chilies and spring onions.
Add the fish fillets, skin side up and laying the thin tail of the fish on top of the spring onion, so it does not overcook. Cook for 5 minutes or until the fish is cooked through, occasionally spooning sauce over the fish. Transfer cooked fish to a plate, spoon sauce over and garnish with cilantro.