The government just wants to earn money from land sales revenue. The lack of land is just an excuse to push up prices, HK have plenty of unproductive land lying there unused.
Singapore is only 60% the size of HK and we have our national parks as well. We have 17 golf courses in Singapore (compared to 6 in HK) and 8 airports in Singapore (compared to 2 in HK). We have numerous military bases to house and train our army, navy and air force. Just look at how many bases we have:
https://en.wikipedia.org/wiki/List_of_Singapore_Armed_Forces_bases
And because of the airbases spreading across our island, we have a blanket height limit of 290m and our average high-rises are only around 12 storeys tall.
Despite all these, we still insist on allocating spaces to plant trees and flowers on every street to green up our island.
Singapore's monthly median household income (USD6,887) is almost twice of HK's (USD3,580).
So why is housing so much more expensive in HK? Why can Singapore implement minimum average housing size while in HK they are building apartments the size of a parking lot?
It all boils down to vested interests of both the government and homeowners in HK.
Homeowners don't want their property value to drop. The government is also dependent on property-related revenue to fund government operations.
In Singapore Lee Kuan Yew, before he stepped down, amended the constitution which disallow the spending of land sales revenue so that future governments can't fund social welfare just by selling more land/raising land price. In this way vested interests by the government are reduced.
Do you still believe the lack of land is the reason for high property prices? Canada and Australia have land sizes of a continent with just 20-30m people, so why is their property prices in the city so high?