The pump is going bad, resulting in very low fuel pressure. Starter needs to see 60psi in order to start, which it is having a problem doing. Once started, the computer sees low fuel pressure, which makes it think the truck is running lean, so it just pours fuel into the cylinders to compensate...