I would do exactly the opposite.
Means testing removes incentive and takes choices from people. If every pound earned means a pound lost then why work more hours, and if every pound saved counts against the right to claim a pension or CB, then what's the point of saving?
It also causes resentment when people can see those who don't work or don't save get given things denied to workers/savers because they've been prudent. Far better IMO to have Maternity, Child Benefit, Sick Pay and Pensions as universal for those who either work or are unable to, and only means-test those who haven't paid enough contributions to qualify. I would scrap NI subsidies for SAHPs but increase CB to all parents so people who can't afford not to work are not forced to subsidise those who can afford to stay at home.
I think the reason pensioners don't pay NI is that it is used to fund pensions, and legally you can't both claim a pension and pay into it. You could claim a state pension and continue to work and contribute to an occupational pension, but any NI would be for the state pension, so it wouldn't work.
If you only pay 'perks' to those on mean-tested benefits you will have a two tier society, and it would almost certainly deter people from trying to be self-sufficient if that is all or nothing. Most people now in their 50s and 60s grew up expecting to get both a SP and an Occ Pension, and have paid in and planned accordingly. Removing the SP to anyone who has made other provision would just drag people down and reduce (or remove) any trust in the system. People need to be able to plan, as the WASPI women found when they had years added to their working lives. It's cruel and unfair to treat people like that.