Place the chicken breasts between two sheets of heavy plastic (resealable freezer bags work well) on a solid, level surface. Firmly pound the chicken with the smooth side of a meat mallet to a thickness of 1/4 inch.
Heat the olive oil in a skillet over medium heat, and cook and stir the asparagus, garlic powder, salt, and black pepper just until the asparagus is bright green and beginning to become tender, about 5 minutes. Remove from heat.
Lay each chicken breast out onto a work surface, and place a slice of ham on the flattened breast. Place 1/4 of the asparagus mixture over the ham, and top with 1/4 of the Cheddar cheese. Roll the chicken breast around the filling and secure with toothpicks or tie with cotton kitchen string; place the stuffed breasts into a 9x13-inch baking dish, seam sides down. Top each breast with about 1/2 tablespoon of butter.
Bake in the preheated oven until the chicken is no longer pink and the juices run clear, 30 to 40 minutes. An instant-read thermometer inserted into the center of a stuffed breast should read 160 degrees F (70 degrees C). Baste the stuffed chicken breasts occasionally with pan juices while baking.
While chicken is baking, bring chicken broth and 1 tablespoon of butter to a boil in a saucepan. Stir in rice and tomatoes, reduce heat to a simmer, cover, and cook the rice until tender and the broth has been absorbed, about 20 minutes. Remove from heat, and let rice stand covered for about 5 minutes; stir in Parmesan cheese. Serve stuffed chicken breasts on the cooked rice.