I am travelling from Mumbai to Lafayette via Munich-Houston. As Houston will be my first port of entry in US, I will have to go through immigration. The layover time at Houston airport is one and half hours. Will I be able to go through immigration in such a short time and board my connecting flight to Lafayette?
Almost certainly yes.
If you look up average wait times at IAH you will see they are typically 10-15 minutes throughout most of the day, though in some cases (like very early morning) can be much longer.
If the airline booked this all on one ticket, then they think you can make the connection, and they are responsible to put you on a later flight if you are delayed in immigration.
Note that these are security wait times, when you get to the US you will have to collect your baggage first before clearing customs; this can take time as well.