Place chicken in a large pot, and pour chicken stock over it. Add enough water to cover if necessary. Bring to a boil, reduce to a simmer, and cook until chicken is cooked through and very tender, about 1 hour. Transfer chicken to a bowl to cool, and reserve the stock to use for enchilada sauce if desired. When chicken is cool enough to handle, remove meat from bones, and shred; set aside.
Heat olive oil in a large skillet over medium heat. Add onion, and cook until the slices start to soften, about 5 minutes. Add peppers, and cook until tender, about 7 minutes. Transfer to a bowl, and set aside.
When ready to assemble, preheat oven to 350 degrees. Place enchilada sauce in a medium saucepan over medium heat. When hot, dip tortillas into sauce, one at a time, to soften, and place side by side on two baking sheets. Divide the shredded chicken and pepper mixture among the tortillas. Place cheeses in a bowl, and toss to combine. Top each tortilla with 2 tablespoons grated cheese. Roll up tortillas, and place snugly seam side down in a 9-by-13-inch ovenproof baking dish. Top them with the remaining enchilada sauce and with the remaining grated cheese. Bake until the enchiladas are heated through and the cheese is melted, about 30 minutes. Serve with the salsa, sour cream, or both if desired.
Bring to room temperature before baking.