This is controlled by your Contacts (or People) application, not by the underlying OS itself. The app that ships with the stock Nexus builds is made by Google, and designed to sync everything to cloud systems. It is a result of using a phone made and sold by Google; pretty much all of the stock applications are the Google versions.
You'll want to find a replacement app for managing your contacts. Most third-party ones will allow you to create "phone only" contacts that do not sync to anywhere. There are quite a few options to choose from.
In the longer-term, if you install a custom ROM built directly off of the Android Open Source Project (AOSP) code, and do not install Google Apps, then you'll have the AOSP contacts application instead of the Google one. You should be able to save local contacts using that (I have no tested this myself in a while, however, so it's possible things have changed).
Izzy has also pointed to an app that may allow you to create local contacts regardless of the frontend you choose: MyLocalAccount. It appears to work by creating a sort of mock network account, which you can then "sync" contacts to. In actuality, it's just a local store that is not synced anywhere else.