That camp sounds scary so we will not do try-catch :).

And you are right, we might run into issues we haven't thought about if we don' do these null checks.

But we had two main concerns about checking for null everywhere:
1. Code readability as you have mentioned. 
Could you explain a bit what did you mean by "extracting code into private util methods"?

2. Hiding the real problem.
If we check for NPEs, wouldn't we lose the stacktrace which will make it even harder to debug when a NPE actually pops up? Some parts of the plugin might still work, but we might not even notice the bug right away.
But I guess in this case we can register an error to the logs ourselves?