In a large stock pot over medium-high heat, sauté onions in olive oil ~2 minutes; and garlic and continue to cook until fragrant (~1 minute).
Add broth, ham bone/hock/shank, beans, pepper, thyme and rosemary to stock pot; bring to a boil over high heat; reduce heat to low, cover and simmer 1½ hours.
Remove ham bone/hock/shank; add carrots and cubed ham to stock pot.
Return to a bubbly boil; reduce heat to medium-low; continue to simmer, uncovered, ~30 minutes, until carrots are tender.