In a food processor, combine the onion with the garlic, scallions, and celery and process until smooth. Scrape the aromatics into a large bowl and stir in the soy sauce, thyme leaves, and chile. Add the chicken pieces and toss to coat in the marinade. Cover with plastic wrap and refrigerate for 4 hours.
In a large, high-sided skillet, heat the oil over medium-high. Remove the chicken from the bowl and wipe away any marinade clinging to it. Season the chicken with salt and pepper and, working in batches, fry the chicken in the oil, turning once, until just cooked through, about 8 minutes. Transfer the chicken to a plate and drain away all but 3 tablespoons of the oil.
Return the pan to the heat and scrape the marinade into the pan. Cook the marinade, stirring, until caramelized, about 5 minutes. Return the chicken to the pan along with 1 cup water and bring to a simmer over medium heat. Cook, stirring, until the chicken is very tender and the water is almost evaporated, about 35 minutes. Remove from the heat and let the chicken stand for 5 minutes before serving.