The most common issue with a high final gravity and under attenuated beer is too low of a pitch rate.

Often, one packet of yeast is insufficient to ferment even a five gallon batch. 100 billion cells only works for 1.022 OG beer in 5.5 gallons. Who wants THAT low of ABV?

The best way to up your yeast count is by creating a starter. Usually made with DME or wort extract, you can create a small 2L sample of 1.05 wort that would triple that yeast count. Simple throw together 2L of boiling water with .75 lbs of extract to get 1.05 OG wort. Cool the wort to pitching temps (68 F), put in a sanitized Erlenmeyer flask, add yeast and set aside over night.

If you have a stir plate, you could achieve the same results with 1L of wort. A teaspoon of yeast nutrient can also help!