は and が have different meanings. It is not inconsistency. It is different principles. They are trying to teach both. は points to the subject of the sentence. What are we talking about directly? が points to the object of the verb. What are we acting on?
I think you’ve got it wrong here. The particle ~は does not point to the subject of the sentence, but to the topic of the sentence. That’s an important difference. For example, let’s say someone asked you what your favorite food is. Your answer could be 「私はピッザです」. If the ~は were marking the subject, that would mean something like “I am pizza”. But the ~は actually marks the sentence topic. So your answer means something like “As for me, it’s pizza”.
In general, in Japanese (and other East Asian languages like Korean or Vietnamese) the subject is much less important than in western languages like English, French or German. Those western languages are also called “subject-prominent languages”, because the subject plays an important role in the languages “mechanics”. Almost every sentence in those languages has to have a subject, no matter what. Because of that, we say things like “it is raining”. Who or what is doing the raining here, who’s the “it”? As far as the meaning is concerned, there is no subject. But because English is a subject-prominent language, we insert kind of a “dummy” subject.
On the other hand, Japanese and other East Asian languages are what’s called “topic-prominent languages”. With them, the topic of the sentence is much more important than the subject. Often, the subject is omitted completely. The topic is also often omitted when it’s clear from the context what you’re talking about. For example, the following conversation doesn’t specify a subject nor a topic, because they’re obvious:
A: 「お元気ですか?」 (Are you well?)
B: 「元気です」 (I’m well)
(As a side note, the お in 「お元気」 is an example of honorific speech. A basically talks about B’s wellness in a more polite way than B talks about his own wellness.)
The ~が particle sometimes is called the “subject particle”, but it doesn’t necessarily mark the subject either I prefer calling it an “identifier particle”, because it’s used to identify something or somebody, for example after it has been asked for:
「誰が学生ですか?」 (Who is the student?)
「私が学生です」 (I’m the student)
So, you can express “I am a student” as 「私は学生です」 or as 「私が学生です」. The meaning is a bit different: 「私は学生です」 is more like “As far as I’m concerned, I’m a student”. 「私が学生です」 is more like “The student (that you talked about before), that’s me”.
For more information about those two particles, see for example Tae Kim’s Guide to Japanese or Imabi (~は and ~が).