as for the bipartite part, if we have a bipartite regular graph, then there must be an even number of vertices, n.
If we split there vertices into V1 and V2 where every edge has one endpoint in V1 and one endpoint in V2, then we can label the vertices of V1 1,2,3...n/2 and label V2 with n/2+1, n/2+2...n (ie: if N was 6 then V1 is labeled 1,2,3 and V2 is labeled 4,5,6)
If we then create an adjacency matrix it will have the form
0,0,0,...0,a,a,a...a
0,0,0,...0,a,a,a...a
0,0,0,...0,a,a,a...a
.
.
.
a,a,a,...a,0,0,0...0
a,a,a,...a,0,0,0...0
a,a,a,...a,0,0,0...0
Where there are n/2 0's and a is either a 1 or a 0, and the sum of a's in one row or column=k.
This is because all vectors in V1 will not connect to each other (same for V2) and every vertice in V1 will connect to k vertices in V2 (and visa versa)
If we then pick v=[1,1,1...1,-1,-1,-1,...-1] where there are n/2 1's and n/2 -1's. (use 1 for all vertices in V1 and =1 for all vertices in V2)
then the product vector y will be equal to [-k,-k,-k,...-k,k,k,k,...k] since in the top n/2 rows, the 1's multiply 0 and the -1's multiply exactly k 1's (and some number b of 0's) and in the bottom n/2 rows the -1's multiply all 0's and the 1's multiply exactly k 1's (and some number of b zeros)
This is reduced to -k[1,1,1...1,-1,-1,-1,...-1] and therefore -k is an eigenvalue
for the reverse direction. If -k is an eigenvalue, then we can simply take graph G and partition it into a bipartite graph of V1 and V2.