In a saucepan, whisk together milk, cream, sugar, and cornstarch until smooth.
Place over medium-high heat, whisking constantly until thick and bubbling.
Remove from heat and stir in rose and orange blossom water.
Pour into serving cups and refrigerate for 20 minutes.
In another small saucepan, whisk together rose syrup concentrate, water, and cornstarch.
Cook over medium-high heat until thickened and bubbling.
Spoon a thin layer of syrup over chilled puddings and refrigerate for 2 hours.
In a skillet, melt butter over medium heat. Add pistachios and toast until fragrant.
Stir in sugar until lightly caramelized, then remove from heat and add orange blossom water.
Cool completely, then sprinkle over puddings before serving.