if you're going to make a syllabary, do not think of classifying the letters into a consonants group and a vowels group.
rather you should think of it as a table of CV combinations.
what you should do is: gather alllll your consonants (THAT IS,
THESE) on one axis
get allllll your vowels (
THESE) on the OTHER axis
taking an example from hiragana, this is what it should look like:
THEN you should make a bunch of symbols that add a consonant to the end of a syllable. because you have made a table of CV combinations. and to get the final C in CVC you need to do this. you don't have to enable all consonants to be added to the end.
continuing to take examples from japanese, they have a special character to add an -N to the end of a syllable.
you could do the same thing for the X in CXVC or you can combine symbols like japanese: き ki + や ya = きゃ kya.
you can also just add diacritics to evolve completely new sets of glyphs like japanese さ sa + " dakuten = ざ za
you also need to keep it more regular than how it currently is.
also, the proper term for "uppercase language" is bicameral script. because
a language is not just a script.