Heat oil in a large skillet over medium-high heat. Brown chicken in batches, about 3 minutes per side; set aside.
Add onion to the pan and cook until soft, 4-5 minutes. Stir in garlic and ginger for 30 seconds.
Mix in curry paste and cook 1 minute to bloom the spices.
Pour in coconut milk and broth, scraping browned bits from the bottom.
Stir in fish sauce and brown sugar. Bring to a low simmer.
Return chicken to the pan, cover, and simmer 8-10 minutes until cooked through.
Finish with lime juice and stir in spinach or peas until wilted. Taste and adjust salt.
Serve over rice.