If I want to maximize the average code length for a code, should my probability vector maximize each value in the vector as much as possible (basically, every probability will be $\frac{1}{n}$ where $n = $ length of $p$?
For example, if I have a probability vector $p = [0.25, 0.25, 0.25, 0.25]$, will this give me a better code length than any other probability vector with $n=4$?
If this is true, why? Is there a maximum value for the average code length? If there is, is there a formula for the maximum average code length of a probability vector with size $n$?
Ok, I will interpret your question in another way. What are the worse cases for Huffman coding? In other words, what maximizes the expected length of a Huffman code.
Now we have to first understand what is Huffman trying to achieve. Huffman coding is trying to associate k bits to the events that happen with the probability of $2^{-k}$. So the optimal cases are when this can be achieved easily like for $n=2$, $p=1/2$ which results in an expected length of 1 which is the minimum achievable (entropy value). Your example is also minimal length achievable. There are probability distributions that there is a higher. But for the same $n=2$ for entropy 0 (p=0) we know we get length 1.
It is noteworthy that the difference between maximum expected length and entropy is less than 1 bit. The worst-case scenario is always the case that entropy approaches 0, while you need at least one bit for any codeword. in other words, one even is almost certain and the others all almost impossible.
Side Note: in that case, using Run Length Encoding is much more efficient for encoding.