Heat the olive oil in a large stockpot over medium-high. Once the oil is glistening, add the onion and cook, stirring, until beginning to soften, about 4 minutes. Add the garlic, and cook, stirring, until fragrant, about 1 more minute.
Add the shredded chicken, chicken stock, creamed corn, sweet corn, diced tomatoes and their juices, enchilada sauce, beans, chilies, cumin, chili powder, salt, and pepper. Bring to a boil over high heat, then reduce the heat to medium-low and cook, stirring occasionally, for about 30 minutes, or until the flavors have melded. Stir in the heavy cream.
Divide the soup among 6 bowls. Serve topped with tortilla strips, cilantro, lime juice, sour cream, cheese, and avocado, if using.