Assume such a code $C$ exists. It has a generator matrix $G=(I|A)$, with a fixed 5x5 block $A$. By general results $C$ then has a parity check matrix $H=(A^T|I)$. Because $C$ is self-dual, $H$ also has to be generator matrix. Therefore $H$ and $G$
must be row-equivalent. Therefore we must have $H=A^TG$, so $A$ has to be invertible
and its transpose must be equal to its inverse.
This means that the rows of $A$ are orthogonal to each other. But all the rows of $A$ must have an odd weight $\ge3$. If one of the rows of $A$ has weight five, then this is an immediate contradiction, because that row will not be orthogonal to the
other rows. After all they then share an odd number of common 1s. So all the rows of $A$ must have weight $3$ exactly. Here there are at least two ways to proceed.
I) An easy induction then proves that the weights of all words of $C$ must be divisible by four. Thus $C$ is doubly even, and its length has to be a multiple of eight by the result cited by azimut contradicting the assumption.
II) We can also observe that any pair of rows of $A$ must have exactly two ones in common. There are undoubtedly many ways of seeing that there does not exist a set of five orthogonal vectors of length five and weight 3. For example, if some subset of three such vectors shares the same doublet of 1s, then there is no room for a fourth vector (easy to see). If no such subset exists, then we can find four such vectors, but there combined support has size four only, and it is impossible to find a fifth.
As pointed out in the comments, Gleason's theorem also forces the existence of a word of weight six leading to the contradiction described in the second paragraph. The point of including approach II was to avoid using Gleason's theory altogether.
i) The weight of every word of your code is even. For that, take $x \in C=C^\perp$. Then $<x,x>=0$, hence $1+1+...+1=0$. But char ($F_{2}$)=$2$. It results that wt($x$) is even, where wt($x$)=the weight of $x$.
Now let an arbitrary codeword $x$= ($x_{1}$,...,$x_{n}$) and notice that $<x,(1,..,1)>=0$ from above observation. Then $(1,..,1) \in C^\perp=C$.
ii)If all the words of $C$ have weight divisible by $4$ you finished.Let suppose that there exists a word $c$ with weight congruent with $2$ mod $4$. Some elements of $C$ must have weight congruent with $2$ mod $4$ because in contrary situation, you can take for example $(1,...,1 )$ and a word $c\in C $ and you will obtain that $(1,...,1)+x $ has weight divisible by $4$.
Now let consider the next function defined on the set of words with weight divisible by $4$:
$x$ go to $x+c$.
I notice that $x+c$ has weight congruent with $2$ mod $4$ because
wt($x+c$)=wt($x$)+wt($c$)-$2$ wt($x\cap c$)
where wt($x\cap c$) is the number of $1$ on the same position in $x$ and $c$. It is easy to show that wt($x\cap c$) is even, because $<x,c>=0$.
So,the function take values in the set of words with weight congruent with $2$ mod $4$. Also the function is one to one. In conclusion half of the codewords in C have weight divisible by $4$ while the other half have even weight not divisible by $4$.
Best Answer
Consider that there is a codeword $c$ with $4 \nmid w(c)$. Then look at the coset $c + C_{1}$. Can you show that every codeword in $C$ is either in $C_{1}$ or in $c+C_{1}$?
This implies that if not all codewords have weight 4, then the code consisting of weight 4 words of $C$ is an index 2 subgroup of $C$ (and so contains half the words).