The form may be complex, but some tasks are indeed complex too. What isn't clear is whether the current complexity of the form is well suited to the problem or need. The trick is to get the right level of complexity for the task at hand. Applying for a mortgage is a lot more complex than signing up for a facebook account, and therefore requires a more complex form.
You mention that respondents can easily lose patience with the form. Can I ask if this has been determined through usability studies? If not, performing a usability study is one of the best ways of finding out what issues exist when it comes to forms.
One possible enhancement is to phrase the questions differently. For instance, many of the responses seem to follow a scale. One way of phrasing these types of questions is by using a Likert scale, which starts off with a statement, then asking the user to choose a response ranging from 'strongly disagree' to 'strongly agree'.
For instance, question 3 on step 2 could be changed from:
'How well is the NGO performing technically in comparison with other NGOs?'
'The NGO is performing well technically against other NGOs'
then using a Likert scale as the response mechanism.
Of course, I would strongly encourage you to find representative users of the form and recruit them for a usability study. Nothing beats user feedback as a way of testing and validating design decisions.