MrAce's solution was correct here.
First of all, you need to consider how many tricks you actually need. If you are in a normal contract then the general rule is to try and take as many as you can. However, you are not in a normal contract and you have a clear goal. If you want to beat those in 5C+1(+420), you need to make 11 tricks (+450),
There are 2 more natural ways to play the spades, but they both run into problems if spades break 4-2.
If you start by cashing the top trumps (the percentage play with no information), then imagine this layout
When the jack of spades doesn't drop, you have a big problem. If you now try and cash clubs, West can ruff the third club and return a heart, and as soon as you ruff you are now stranded in the North hand with East having heart winners and an entry in diamonds.
If you decide to play spades by cashing the ace and finessing (which is the percentage play assuming East has at least 6 hearts), then you might run into similar problems if East started with Jx or Jxxx in trumps instead of xx.
Your best chance to sort out this problem is to run the 9 without cashing the ace. If it wins, you can simply cash the ace, cross over to the ace of diamonds (no need to finesse) to draw the remaining trumps and you can discard the diamond losers on the clubs. If the finesse loses, then you will make +1 unless West is void in clubs and East works out to lead them. If East tries to force you in hearts, you can ruff with the ace in hand and cross over in diamonds to draw the trumps.
At the table, the layout was rather anticlimatic:
Nobody bid the slam, and we got 93% on the board for +480, beaten only by a table who played in 5HX going -3 for +500.