h-bridge voltage readings using bipolar junction transistor
R3 is 1000&ohm; and has 4.45V across it, so it must be passing 4.45/1000 = 4.45mA. The Base of Q2 is getting this same current, while Q6 is getting a bit more (we don't know exactly how much, perhaps 5~8mA?) from the optocoupler, via Q1's Base.

The 2N3906 has a maximum saturation voltage of 0.4V with 5mA Base current and 50mA Collector current. Most units are much better than this though, so I suspect your motor is drawing significantly more than 50mA. The 2N3904 is specified to drop a maximum of 0.3V (which it is) under the same conditions, but it is probably benefiting from the extra Base current supplied by the optocoupler.

The upper transistors (Q2, Q5) are not getting enough Base current to switch on fully. You should decrease the value of R3 and R6 to increase the Base drive. 220&ohm; should get you about 20mA, which is enough to keep the transistors saturated up to 200mA.

Adding up the voltage drops when the motor is running, 0.8 + 6.4 + 0.3 = 7.5V. But the battery measured 8.8V! (not at exactly the same time though, right?). A good Alkaline PP9 should hold over 8V at 100mA when fresh. So either you have a weak battery that drops its voltage rapidly under load, or there is a poor connection somewhere (built on a breadboard? using clip leads? bad solder joint?). 

Measure the battery voltage before and after measuring the other places. To check the wiring and connectors, try measuring the voltages between components - you might get a surprise!