Place your bacon into a medium sauté pan and cook until the bacon is crispy. Once bacon is cooked remove the bacon from the pan onto a plate lined with paper towels to drain. Leave the bacon grease in the pan.
Season your chicken breast with the salt and pepper and add to the same pan that the bacon was cooked in. Cookie the chicken over medium heat until the chicken breast until they reach an internal temperature of 160°. It will take 6-8 minutes per side of chicken to get to 160°, it depends on your stove and your pan so my suggestion is to use a meat thermometer to make sure you get to 160°.
While the chicken breasts are cooking make your homemade guacamole.
Cut your avocado in half length wise and remove the seeds. I find it easiest to stab the seed with a knife and gently pull the seed out.
Using a spoon scoop the insides from all of the avocados into a large bowl.
Once all of the avocados are scooped out use a potato masher and smash all of the avocado. You can make is as smooth or as chunky as you would like to. I personally like to have chunks in my guacamole.
Wash and dice your onion and add the onion to the bowl of mashed avocado.
Cut your tomato so it is 1/4th and 3/4th size pieces. Take the 1/4 of the tomato and dice it. Slice the other section of tomato into 4 slices. Set the tomato slices aside and add the diced tomato to the bowl of avocado.
Add the lime juice, garlic powder and chili powder to your avocado, tomatoes and onions and mix well to incorporate into the guacamole. Set aside the bowl of guacamole.
If your pan is oven safe you can leave the chicken in the pan. If it is not then you will need to move it to an oven safe baking dish.
Once the chicken has reached 160° top the chicken with the tomato slices, then half of the guacamole goes on to each of the chicken breasts. Top the guacamole with the cooked bacon and then sprinkle with the cheddar cheese.
Place the whole pan underneath your broiler until the cheese is melted.