Add pinto beans to a pot of cold water and soak overnight. Pick them over and remove foreign material or damaged beans. Add beans to a pot of water so the beans are covered by an inch of water. Boil gently for 1 to 1 ½ hours until the beans are tender but not mushy. Drain the beans and reserve the liquid.
While the beans are boiling, fry the bacon until almost crisp and remove from the pan. Save the fat. Add onions to the bacon fat and fry until tender and slightly browned. Add garlic, tomato, and bell and jalapeno peppers to bacon fat and cook until tender.
Return bacon to pan, add beer, and cook until the liquid is almost gone. Place the cooked beans in a large pot. Add the fried bacon, onion, pepper mixture, and cilantro, as well as enough of the reserved liquid to just cover the beans. Heat mixture until hot. Salt and pepper to taste.
Optional – puree a cup or more of the bean mixture in a blender and return to the pot to make the beans thicker. Serve as a side dish with tortillas or to complement any meal.