Add first 6 ingredients to a large pot or Dutch oven. Add enough cold water to cover the chicken (about 10 cups) and bring to a boil. Skim any foam that rises to the surface. Reduce heat and simmer gently until chicken is very tender and starting to fall off the bone, 50 minutes to 1 hour, skimming as needed.
While chicken is simmering, puree canned tomatoes, chipotle peppers, and adobo sauce in a food processor or blender until completely smooth. Set aside.
When chicken is done cooking, place a colander into a larger bowl set in the sink. Carefully pour chicken and broth into the colander. Remove colander from the bowl and let chicken cool. Return broth to the pot and keep warm over low heat. When chicken is cool enough to handle, pick meat from the bones, shredding large pieces. Place meat in the pot with broth and discard skin, bones, and other solids. Add tomato mixture and white onion to the broth and bring to a gentle simmer over medium heat. Simmer 15 minutes, lowering heat if necessary.