Sort and wash beans; place in a large Dutch oven. Cover with water to 2 inches above beans; bring to a boil. Cook 2 minutes. Remove from heat; cover and let stand 1 hour. Drain.
Heat oil in pan over medium heat. Add onion; cook until tender, stirring occasionally. Add garlic, and cook for 1 minute, stirring frequently. Add drained beans, broth, and remaining ingredients; bring to a boil. Cover, reduce heat, and simmer 2 1/2 hours or until beans are tender. Discard bay leaves.
Remove ham hocks with a slotted spoon, and cool slightly. Remove meat from bones; discard fat, gristle, and bones. Shred meat with 2 forks.
Place 1 cup of bean mixture in a blender; process until smooth. Return pureed bean mixture to pan; stir until blended. Stir in meat.