In a heavy saucepan or pot, heat pork cubes over medium heat, stirring occasionally until partly cooked, edges are seared, and fat is rendered.
Remove pork pieces with a slotted spoon into a dish. Discard rendered fat (see note) except for a quarter cup or so. Add olive oil if there isn't enough fat.
Add garlic and stir-fry until golden.
Add onion and saute until limp.
Add tomatoes and saute until limp and juices are rendered.
Return pork pieces to pan and add water to cover.
Bring to a boil, and then lower heat to a simmer. Cook covered until meat is done.
Remove cover, add lime juice, and hot pepper if desired.
Increase heat to medium-high and continue to cook until water reduces and fat is rendered once more.
Serve hot over rice.