Rinse fish and pat dry; cut fillets crosswise into 2- by 3-inch pieces.
Place sugar in a 10- to 12-inch frying pan over medium-high heat; shake pan often until sugar is melted and amber colored, 2 to 3 minutes. Add 1/2 cup hot water (mixture will bubble vigorously) and stir over medium heat until caramelized sugar is dissolved.
Stir in fish sauce, shallots, ginger, and garlic; stir often over high heat until boiling. Lay fish in a single layer in sauce, overlapping edges if necessary to fit. Simmer for about 3 minutes, turn over carefully, and simmer until barely opaque but still moist-looking in center of thickest part (cut to test), 3 to 4 minutes longer.
Transfer fish to serving dish with a slotted spatula. Bring sauce to a boil over high heat and stir often until slightly syrupy and reduced to about 2/3 cup, 2 to 4 minutes; pour over fish, then sprinkle with green onions and pepper.
Per serving: 187 cal., 19% (36 cal.) from fat; 23 g protein; 4 g fat (3 g sat.); 14 g carbo (2 g fiber); 508 mg sodium; chol. for tilapia not available.