Actually, your initial reasoning is a perfectly good instance of 'reasoning by pigeonholing': there are at most 31 'even' holes for pigeons to go in, so with 32 pigeons you're bound to get an odd number.
That's it!
Your second method is far more complicated than it has to be. Yes, you can make it work by making the holes $\{ 0,1 \}$, $\{2,3 \}$, etc. but also by using $\{0,3 \}$, $\{ 1,2 \}$, etc. In fact, to get as many holes as even numbers, you could even use $\{ 0,37,39 \}$, $\{2, 13 \}$, $\{ 4 \}$, $\{ 6, 19,23,29,59 \}$, etc. In other words, adding the odd numbers to the even numbers when all that really counts is how many even numbers there are is completely extraneous.
Now: I understand you tried to set it up in such a way that you can try to answer both the question about the odd and the even numbers at once ... which seemed to work fine ... until you got to the $60$ 'by-itself-hole' ... and now you get into trouble: Using $\{ 60 \}$ as a hole means it can contain exactly one 'even' pigeon, but now it cannot contain any 'odd' pigeon, and so it can't be used to do the reasoning regarding odd numbers, and using $\{ 58,59,60 \}$ means two 'even' pigeons can go into that hole, and so now it cannot be used to reason about the even numbers.
So really the best thing is to answer the question about the even numbers separately from the question about the odd numbers: with $31$ even numbers you need to pick $32$ pigeons to get an odd pigeon, and with $30$ odd numbers you need $31$ pigeons to get an even pigeon.
You tagged it as pigeonhole principle, so making concrete pigeonholes might be a good idea. You are looking for pairs that sum to $31$, so those stand out as a natural choice. We then get the pigeonholes
$$
\{1,30\}, \{2,29\}, \ldots, \{15,16\}
$$
Now apply the principle, and you're done.
Best Answer
Hint: The holes are remainders on division by $p$. Consider $\sum_{i=1}^k a_i$ for $k=1,2,3 \ldots,p$ If any are divisible by $p$ you are done. If not, You have $p$ sums with only $p-1$ values of remainder allowed.