Flights inside China are significantly cheaper than from Hong Kong. You can easily just take the ferry over to Shenzen airport - check this:
http://eng.szairport.com/catalog_585.aspx
Or take the train from Hung Hom and then a quick taxi ride to CAN.
You can book flights inside china at ctrip.com or elong.com.
Or take the subway over to Shenzen, spend some time there, fly, get back to CAN, spend some time there and then take the train back..