Just set allow scene objects to false? That will limit it to assets (i.e. not object in the scene).
You can determine if an object is a prefab (in the editor not at runtime.. but you are working in the editor) using this:
[How to know if a GameObject is a prefab?][1]. Since ObjectField doesn't have a way to edit the list or do better filtering you'd have to roll your own object selector (other than object type and prefab isn't a type).
[1]: http://answers.unity3d.com/questions/218429/how-to-know-if-a-gameobject-is-a-prefab.html
↧