Airlines typically charge "whatever they can get away with", which depends on a lot of factors: season, holiday/special events, historical loads, competition, length of stay, time between booking departure, competition, number of connections etc. It has often very little to do with the actual cost of operating the flight. It's frequently the other way around: non-stop flights are cheaper for the airline but priced higher than connecting flights.
Overall this makes airline pricing mostly incomprehensible and the number of fares and associated fare rules very large even for a single flight. Often a "trial & error" search can save you a lot of money.
In your specific case, you would have to ask Singapore directly. It doesn't appear to be standard practice and I don't see any price jump by going from Jun 28 to Jun 29 for other airlines. Could be operational: maybe they are thinking about changing the route-map and rerouting a passenger that has already started a trip is more work and more expensive than just cancelling an itinerary that hasn't started yet. So the price jump is either "insurance against future timetable changes" or "we think people will just pay extra for this".
If you don't like Singapore Airlines pricing, choose a different airline. Currently a good alternative for 12/28/2020 - 6/29/2021 would be Emirates at
£724 and you can go as low as £553 if you are willing to accept more inconvenient routings.