It does appear to be unfair that a single person has to pay so a large suuplement for single occupancy. The only way around this is to book late (some people unfortunately can't do this) if the cruise is out of the main season and isn't selling well many cruise lines will often no single occupancy supplements. It is also worth considering cruising on a 5 star line, often their single occupancy tariff is much less than the standard lines meaning you can cruise on a much better ship for a similar price.
You are not paying for the meals for 2 people, you are paying for the lost revenue from that second person, their drinks, their casino spending, their art auction purchases, their shore excursions......
The mark up varies and there are some cruises where it is zero, eg P&O Artemis round Britain cruise. The extra cost is usually shown in brochures or on the website.
Sorry the zero ones have all gone. Its now 60%.