If anything can be changed in the code, than is it possible to increase total supply beyond 21M?
Adding additional division units != adding additional supply. To increase the monetary supply of Bitcoin would require a hard fork with near unanimous consensus. Most of the people hate even the thought of the idea.
And if it is, doesn´t it mean bitcoin is a weak currency doomed to fail?
No.