The two child cap was announced two years before it took effect. It only takes nine months to conceive and deliver a human baby. So if you didn't know there would be no additional money for your third child, and then you have a baby for whom you will receive no additional money, unless a twin/multiple birth then you are standing on your own two feet. You had the child; you pay for it.
I really don't think anything more could have been done to signal the change of rules. And, as a tax payer, at the higher rates, who is still paying 35% tax in retirement, actually I think it was the right call.
I know some posters are gentler and more easy going on this point but IMO, if you are going to have children then I think you are responsible for what they cost, and please, BTW, don't forget that the tax payers of the whole country are paying their income tax to the NHS and pensions and social care. The health and social care infrastructure is in danger of becoming larger than the economy.