As you say,
- Tengo = I have
- Tengo que = I have to
But I see you have some confusion regarding the last two. I'll try to clarify them.
First of all, you must understand the difference between "infinitive" and "personal tenses". The infinitive is the "name" of the verb.
- Tener = To have, like "the action of having something"
This is a non-personal form, it's the name of the verb, it's generic.
Personal forms appear when you use it with subjects (it's the same in English).
Yo tengo = I have
Tú tienes = you have
Él /ella tiene =He/She has
Nosotros tenemos = We have
Vosotros tenéis = You (all) have
Ellos tienen = They have.
So, on the one hand is the verb's name, and on the other hand there's how we use it with subjects.
As you know, subjects can be omitted in Spanish, as there is only one possibility. In English, "have" can be "you have" or "they have" or "we have", so you must clarify. In Spanish, each subject has its word, so there's no need to specify.
So, after this, the usages are easy:
- Tengo = I have
- Tengo que = I have to
With any person:
- Tienes = you have
- Tienes que = you have to
Just that.
Finally, "lo" is a pronoun that, roughly speaking, means "it".
So
- Lo tengo = I have IT.
- Lo tienes = you have IT.
- Lo tiene = He/she has IT.
and so on.
However, "tener" is the name of the verb, so "tenerlo" means "to have it", or "the action of having it". The key is that "name of the verb" is not the same as "personal forms" (forms the verb adopts when used with subjects).
It's the same as English. Another example: to be. Name of the verb: "to be" (ser), but its personal forms are "I am, you are, he is...)".
I hope it's clearer now.