Prep the chicken: Remove the neck and giblets from the whole chicken and discard. Pat chicken dry with paper towels and transfer to a gallon zip-top storage bag and set aside.
Make the marinade: Add cilantro, oil, onion, lime zest, lime juice, garlic, apple cider vinegar, salt, chili powder, cumin, and black pepper to a food processor or blender. Pulse until smooth.
Marinate the chicken: Pour the marinade over the chicken in the zip-top storage bag, close, and massage into the chicken so that it is completely coated. Place chicken in the refrigerator and marinate overnight, or up to 24 hours.
Prep the grill: When ready to grill, preheat the grill to medium heat (350°F-375°F) by lighting the burners (or charcoal) on only one half of the grill, and leaving them off on the other half. This creates a zone of direct heat and a zone of indirect heat.
Place the beer can in the chicken: Remove the chicken from the storage bag and shake off any excess marinade. Open the can of beer and discard (or drink) half of it. Lower the chicken onto the half-full beer, placing the can in the cavity with the chicken sitting upright.
Grill: Carefully place the chicken with the beer can onto the cool side of the grill so that it’s over indirect heat. The legs of the chicken and the beer can will act as a tripod so that the chicken sits upright. Close the lid and let the chicken cook for 1 hour.
Rotate and finish grilling: Open the lid and carefully rotate the chicken 180° so that it heats evenly. Close the lid and let the chicken cook for another 45 minutes to 1 hour, or until a meat thermometer reads 165°F when inserted into the thickest part of the thigh.
Rest: Carefully transfer the chicken and beer can to a rimmed plate or tray and let it rest for 10 minutes. Then, carefully remove the beer can from the cavity of the chicken and discard. The beer will still be hot so be extra careful.
Make the quick slaw: While the chicken is resting, make the slaw by adding cabbage, carrots, lime juice, cilantro, salt, and pepper to a large bowl. Mix together, taste, and season with more salt if necessary. Set aside.
Cut or shred chicken: Transfer the chicken to a cutting board and slice or shred the chicken into bite-sized pieces.
Serve: Serve in warm corn or flour tortillas with quick slaw and garnish with chopped cilantro and hot sauce if desired.