Calentar 2 cucharadas de aceite en una sartén. Añadir la cebolla picada y cocinar hasta que esté blanda y dorada.
Añadir el ajo, el jengibre y todas las especias. Cocine durante 1 a 2 minutos hasta que estén fragantes.
Añada el azúcar moreno, la mermelada o chutney de albaricoque, el vinagre y el agua. Dejar cocer a fuego lento durante unos 5 minutos y, a continuación, enfriar completamente.
Colocar los dados de cordero en un bol o recipiente grande. Vierta la marinada enfriada sobre la carne, asegurándose de que quede bien cubierta. Cubrir y refrigerar toda la noche.
Al día siguiente, ensarte el cordero en brochetas, alternando con trozos de cebolla y orejones.
Asar a fuego medio o en el horno a 200°C, dándole la vuelta de vez en cuando, hasta que el cordero esté bien hecho y ligeramente carbonizado, entre 15 y 20 minutos.
Servir caliente con arroz amarillo, chutney o una ensalada fresca.