Heat oil in a large saucepan over medium-high heat. Add ground beef, onion, 1/2 teaspoon salt, and a pinch of pepper. Cook, breaking up meat with the back of a spoon, until cooked through, 6 to 8 minutes. Add chili powder; cook 1 minute. Add tomatoes, enchilada sauce, and tomato sauce; bring to a boil, then reduce heat and simmer, partially covered, until thickened slightly, 25 to 30 minutes. Stir in beans, if using, and cook until warmed through, about 2 minutes. Serve chili with sour cream, avocado, and chiles.