Combine first 3 ingredients in a heavy Dutch oven; bring to a simmer over medium-high heat (about 15 minutes). Stir in rice and salt; reduce heat to medium, and cook 45 minutes or until rice is tender. Stir occasionally, about every 5 to 10 minutes initially, and then as pudding begins to thicken, watch and stir every few minutes to prevent sticking. Do not boil. Place egg in a bowl; gradually add 1 cup hot rice mixture to egg, stirring constantly with a whisk. Return egg mixture to pan; cook 1 minute. Remove from heat. Add raisins, amaretto, vanilla, and sour cream; stir well. Sprinkle with cinnamon, if desired.
If you want a more traditional rice pudding, omit the amaretto and almond extract, and increase the vanilla extract to 1 tablespoon. Also you'll need an extra 1/4 cup of water.