According to AirNav, La Guardia handles around 1013 aircraft operations a day; that's 1013 takeoffs and landings per day. Compare to JFK, which handles 1232 aircraft operations a day with twice as many runways, or Newark, with 1098 aircraft operations a day.
The airport might suck and may or may not be inconvenient, but it is handling far more traffic than can be diverted to another existing airport. You could expand another existing airport to handle the excess traffic--but where? Teterboro? Caldwell in Essex County? Long Island Mac Arthur?
And the entire industry is moving away from long haul flights to shorter regional hops, meaning traffic operations are only going to increase. So assuming you can just divert all the flights to JFK and Newark isn't going to work; split the number of flights between the two and now you have two airports handling about the same amount of traffic as LAX, with 1741 flights/day. So even if we assume those airports can handle the increase in traffic, that pretty much will max out both airports and prevent future expansion.
Hong Kong International took nearly a decade to construct, in a regulatory environment which makes it easy to steamroll in large infrastructure projects. So constructing a new airport near Rikers Island is not going to happen over a weekend.
And if you did go the Hong Kong route, you may be better off spending the money, moving everything off Rikers Island, and expanding the airport by paving Rikers and adding two additional runways, modernizing La Guardia, and extending the subway system to run out to the terminals there.