It has to do with the function of the adjective in the sentence (I'll provide examples of the different types in English). Attributive adjectives (i.e. those coming before and directly modifying a noun in sentences like "The beautiful girl is crying") are never changed to agree with the noun, while predicative adjectives (i.e. those acting as a predicate in sentences like "My son is tall", and are accompanied by a form of 'be' in English) must agree in number with the subject noun in Hungarian.
Let's look at the original sentence and then, immediately below that, swap the functions of the two adjectives to form a new sentence with a slightly different meaning:
"A kicsi/kis almák pirosak", meaning "The small apples are red"
"A piros almák kicsik", meaning "The red apples are small"
We can see here that, in the second sentence, we now pluralize only 'kicsi' and not 'piros'.
By the way, I see you're also learning German, where you might have noticed that the exact opposite is true, so that attributive adjectives are modified to agree with the noun, while predicative adjectives are not. Interesting, eh?
Why do those things have to be mutually exclusive? Indonesian, for example, is both. Hungarian is neither. So, (attributive) adjectives come before nouns, and it does have a 'be' verb, it just happens to be omitted in most instances where the subject of a present tense clause is in the 3rd person.
Fair enough, I suppose. I hope that, as you continue to learn Hungarian and other languages, you'll come to discover and appreciate the amazing diversity in structure that can be found in the world's languages. It truly is fascinating. It looks like you've already begun learning quite a few different languages. Csak így tovább!
It's one of those languages which doesn't use "to be" for a third-person predicate in the present tense.
So there is a "to be" in the past and future, and there is a "to be" for "I am red, we are red, you are red" but not for "he/she/it is red, they are red" (nor for "he is a teacher" etc.).