Toomebridge ryttare ligger nionde i den totala ställningar på 28 poäng, efter att ha gjort poäng i varje runda hittills.
Laverty, 29, laddad på nionde plats i öppningsvarvet på hans Aspar Ducati, sedan gjorde det upp till åttonde, innan den togs omhand av Spaniard Pol Espargaro.
Valentino Rossi var en start-till-finish vinnare, med Jorge Lorenzo i andra.
Pole position mannen Rossi åtnjöt en två sekunders fördel över sin Yamaha team-kamrat på checkade flaggan, med Honda par Marc Marquez och Dani Pedrosa tar tredje respektive fjärde plats.
Marquez leder mästerskapet med 17 poäng från Lorenzo, med italienska Rossi ytterligare 17 poäng efter i tredje.
Laverty laps konsekvent hela, med Espargaro kommer förbi med 16 varv kvar, men misslyckas med att avsevärt öka klyftan mellan de två.
Laverty slutade bara 1,5 sekunder bakom spanjoren och även om Hector Barbera försökte en sista slag attack på den tidigare World Superbike ryttare, han kunde inte få det att sticka.
Laverty var 12:e i föregående omgång, Grand Prix of the Americas i Austin, efter att ha klinkat sitt bästa resultat någonsin av fjärde i Argentina en vecka tidigare.
Han ockuperade också 12:e plats i säsongens öppnare i Qatar.
Eugene Laverty fick ytterligare sju poäng i MotoGP-mästerskapet genom att avsluta nionde i årets fjärde omgång i Jerez i Spanien.