Combine chicken, curry paste, yogurt, garam masala and half the garlic in a glass or ceramic bowl, cover and chill for 10 minutes to marinate.
Heat half the oil in a medium saucepan over moderately high heat and add chicken mixture and cook and stir for 5 minutes.
Stir in tomato puree and season well with pepper and bring to the boil and then reduce heat, simmer covered for 20 minutes or until chicken is cooked and then add cream to chicken mixture; cook and stir for 2 minutes and then remove from the heat and stir in coriander.
Meanwhile cook beans in a medium saucepan of boiling water for 3 minutes or until just tender and then drain.
Heat remaining oil in same pan over moderate heat and add remaining garlic and cook and stir for 30 seconds or until fragrant and add the beans, toss to combine.
Spoon butter chicken and beans into serving bowls and sprinkle with almonds and serve curry with bread.