How come equiripple filters are symmetric/anti-symmetric in time, but do not posses linear phase, but only piecewise-linearity?
Do not all FIR+symmetric/anti-symmetric have Generalized linear phase?
How come equiripple filters are symmetric/anti-symmetric in time, but do not posses linear phase, but only piecewise-linearity?
Do not all FIR+symmetric/anti-symmetric have Generalized linear phase?
Your filter is a linear-phase filter. There are two ways you can define the phase:
\begin{align*} H(e^{j\omega}) &= \big|H(e^{j\omega})\big|e^{j\phi_a(\omega)} \\ H(e^{j\omega}) &= A(\omega)e^{j\phi_b(\omega)} \end{align*}
where $A(\omega)$ is a real-valued (or purely imaginary for odd symmetry) but possibly bipolar function. The phase $\phi_a(\omega)$ has phase jumps of $\pi$ at the zeros of $\big|H(e^{j\omega})\big|$, and that's what you see in your figure. The phase $\phi_b(\omega)$ doesn't jump at the zeros because that's where $A(\omega)$ changes its sign.
As a very simple example take
$$h[n]=\delta[n]+\delta[n-1]+\delta[n-2]$$
The bipolar amplitude function and the corresponding phase $\phi_b(\omega)$ are given by
\begin{align*} A(\omega) &= 1+2\cos\omega\\ \phi_b(\omega) &= -\omega \end{align*}
The top plot in the figure below shows the magnitude $|H(e^{j\omega})|$ and the amplitude function $A(\omega)$. The bottom plot shows the two phase functions. Note the jump of $\phi_a(\omega)$ at the zero of the magnitude.
but do not posses linear phase
Incorrect: they do posses linear phase.
The problem is most likely with your plotting/visualization code. In order to get a good graph, you often need to zero-pad and unwrap the phase properly. In addition for, say, a low pass filter, the magnitude in the stop band has zeros and at this point the phase is undefined which can create numerical issues.
Many tools handle this differently and the quality of the visual result depends on the details.