Heat oil in a deep pan or stockpot set over medium-high heat. Stir in onion and garlic and cook until transparent, about 5 minutes. Mix in cabbage; toss and cook until wilted, about 2 minutes. Add ham hocks, bay leaves, Cajun seasoning, cayenne pepper, and salt, stirring for 2 minutes more. Pour in chicken stock and black-eyed peas. Bring the mixture to a boil, reduce heat to low, and cook uncovered for 2 hours.
Meanwhile, place water and rice into a saucepan. Bring to a boil, reduce heat to low, cover, and simmer until all liquid is absorbed and rice is light and fluffy, about 20 minutes.
Before serving, remove ham hocks from the pot. Coarsely chop the meat and return to the black-eyed pea mixture. Serve hot over rice.