2NT. As planned, you show roughly 18+ to 20 with a balanced hand and spades stopped. Partner has 0-8. If you pass, you could end up in a partscore with 27 HCP! If you bid 3NT, you could end up in game with 19 HCP. 2NT is the proper middle ground.
Partner raises to 3NT:
On the spade lead, East has to make a clever defensive play. If he wins the king and returns a spade, you will make your contract. When you go to knock out the diamonds, the defense is unable to set up and run spades. East needs to let declarer win the Q at trick one. Now, there is no way to make 3NT. Don't play against such players. :)