NoFlyZone is a plugin that prevents players from flying in specific WorldGuard regions if they do not have permission.
All you need to do is add the region name to the NoFlyZone config list either by command or by editing the config manually and using /nfz reload. Anyone without the permission noflyzone.bypass will be stopped from flying as soon as they enter the region.
You NEED WorldGuard 6.x + WorldEdit for this plugin to work!
This plugin is open source. You can get the source code from here: https://github.com/extendedclip/NoFlyZone