In a small bowl, stir together the garlic, chopped onion, cilantro, olive oil, lime juice, paprika, cumin, parsley, salt, and red pepper flakes until mixed thoroughly. Pour the marinade into a resealable plastic bag.
Rinse the chicken under cold water and pat thoroughly dry. Cut the breasts in half lengthwise. Add the chicken to the marinade, place the bag inside a bowl in case there are any leaks, and refrigerate for at least 1 hour or up to 3 hours. Feel free to turn the bag at least once while it marinates.
Remove the chicken from the refrigerator. Preheat the grill to high until the temperature reaches at least 500°F.
Slice the whole onion in half, top to root (no need to remove the skin), skewer one half with a long grilling fork, and rub the cut side of the onion over the grill grates. (Reserve the remaining half onion for another use.) The heat will activate the onion’s natural juices to remove any bits of charred food or debris and season the grill.
Lower the grill heat to medium. Remove the chicken from the marinade, discarding the marinade, and grill until the internal temperature reaches 165°F, 3 to 4 minutes per side. Remove from the heat and serve.