Take this answer with a grain of salt. Much has changed since I asked this question years ago. I recommend now using Lombok instead of my EL solution. Leaving
You can use @Getter/@Setter annotations from Project Lombok if you don't want to write/generate getter and setter method(s) on your Java Bean.
Yes. Jsf is very extensible, pretty much everything can be extended or replaced.
A great example of custom resolvers is here
The guy was using it to populate dropdown lists from database queries. I'm certain you could use similar techniques to resolve based on public fields rather than public get/set methods.