Place half the almonds in a food processor. Add 1/2 cup very hot water, and purée until liquid. Press firmly through a sieve into a large saucepan. Place pulp in sieve back in food processor with remaining almonds and 1/2 cup very hot water; liquefy again. Press through sieve into saucepan once more. Discard pulp.
Add 2 cups water to almond milk, and bring to a boil. Sprinkle in rice and sugar, and add cinnamon sticks; then add half the butter, the salt, almond extract and 1 quart milk. Bring to a boil, then reduce heat, cover and simmer gently for 30 minutes, adding more milk if necessary.
Continue cooking rice, adding more milk and stirring often until thick and velvety, but loose. As milk becomes absorbed, add more. Taste for sweetness. It should be barely sweet; add more sugar if necessary.
Continue cooking for another 15 minutes, stirring constantly to prevent rice from burning. Stir in remaining butter. Pour into a large serving bowl, and sprinkle with pistachios and coconut, if desired. Pass orange flower water for people to add on their own, if desired. Pudding may also be left to cool and served at room temperature.