Answer:
It's 10.
Explanation:
Essentially what you are saying is that there exists a group of 20 nodes where all nodes have degree 3. My initial chicken scratch of the problem was to fill up the nodes with degree 3 most efficiently to get something like this for the first 6 students:
$\hskip2in$
Here, a double-sided arrow means "mutual hate". Once you get to the seventh student he/she can't hate anyone in this group because that would mean a student from this group has degree 4, so you start optimally finding degrees again, which just makes another group like this:
$\hskip2in$
And again for the remaining students:
$\hskip2in$
However, there are two left (S & T). They cannot hate anyone in these three groups (degree 3 constraint), so either one hate bond between any two people in EACH group is broken to give S three people to hate and T as well, like so:
$\hskip1.5in$
or S and T hate one another and one hate bond between any two people in TWO groups is broken to give S two more people to hate and T as well, like so:
$\hskip2in$
Now, in either case, circle the disjoint students, i.e., circle students in such a way that no two students share the same edge color (double arrow). Circling them in this way ensures that you're picking students that don't hate one another, as they don't share a hate bond. It's also what's known as the independent set. Notice that the maximum is 10 for both scenarios. :-)
For example:
$\hskip2in$
Interestingly, it turns out this problem is in fact a case of a larger generalized notion. Mathematically speaking, what is being asked is "What is the maximum size of the independent set on any $d$-regular graph on $v$ vertices?" Where, here, $d=3$ and $v=20$. Moshe Rosenfeld has discovered this to follow the below equation:
$$F(v,d) = \min\{\lfloor v/2\rfloor, v-d\}$$
So, for $F(20,3)$ we get the following:
$$F(20,3) = \min\{\lfloor 20/2\rfloor, 20-3\}=\min\{10,17\}=10$$
Which is cool because now you can generalize for any number of students and any number (one less than the number of students) of mutual hate bonds, which isn't really all that practical because who in a room of other people hates exactly the same amount of people?
By the way, there are 500,000+ connected graphs like this (the fourth one in this post). They all look something like this:

All the red students can be chosen and they'll all like each other. Notice how they're not all 10. Some have 9. Some have 8.
Notes:
Erick Wong (math se) found the above linked thesis.
$\lfloor \hspace{0.25cm} \rfloor$ is the floor function.
$\min\{\}$ is the min function.