To begin, line a heatproof dish with banana leaves or prepare heatproof plastic wraps. Place the rinsed rice in the centre, wrap tightly into firm cylinders about 4cm thick, and secure the ends. Steam over medium heat for 1.5 to 2 hours until firm and cooked through. Cool completely before slicing into rounds.
Using a blender or mortar and pestle, grind shallots, garlic, chillies, candlenuts, ground coriander, turmeric, and galangal into a smooth paste. Add a splash of water if needed to help the blending process. Set aside.
In a large pot, heat cooking oil over medium heat. Add the prepared spice paste and sauté for 4 to 5 minutes until fragrant and the oil begins to separate from the paste. Stir continuously to avoid burning.
Add the bruised lemongrass, kaffir lime leaves, and salam leaves to the pot. Stir them into the spice paste to release their oils, cooking for an additional minute before the next step.
Pour in the coconut milk and water while stirring to combine with the spice paste. Bring to a gentle boil over medium heat, allowing the flavours to meld harmoniously.
Add young jackfruit (or green beans) and cabbage into the pot. Stir gently to coat them with the curry base. Simmer uncovered for 15 to 20 minutes or until vegetables are tender but not mushy.
Stir in the grated palm sugar, tamarind water, and salt to taste. Adjust seasoning if needed, ensuring a balance of sweet, sour, and savoury that defines authentic Lontong Sayur.
Allow the curry to simmer for another 5 minutes to deepen its flavour and slightly thicken. Remove from heat and discard lemongrass and leaves before serving.
Slice the cooled lontong rice cakes into 2cm thick rounds. Arrange them in serving bowls, ensuring they remain firm to soak up the curry without disintegrating.
Pour generous ladles of the hot vegetable curry over the rice cakes. Serve with boiled eggs, fried shallots, or sambal for added depth. Present immediately for the fullest aromatic experience.