Place bacon in a large skillet and cook over medium-high heat, turning occasionally, until evenly browned, about 10 minutes. Drain bacon slices on paper towels. Chop into bite-sized pieces. Discard half of the bacon grease left in the pan.
Return the skillet to the stovetop and toss in bacon, tomatoes, jalapeno peppers, diced onion, and cilantro. Stir in pinto beans. Cook over low heat, stirring occasionally, until flavors are blended, about 30 minutes.
Heat canola oil in a saucepan over medium-high heat. Add rice and chopped onion and cook until rice is brown and onion is tender, about 5 minutes. Stir in 2 cups water and tomato sauce. Bring to a simmer. Reduce heat to low; cover saucepan and cook until rice has absorbed the liquids, about 20 minutes. Stir in bacon mixture.