I recently made my first home brew batch using an off the shelf starter kit (English brown ale). The beer is much sweeter than I was expecting and the alcohol content is ~3-3.5% (should be 4.5%). Am I right in thinking that this may be because the yeast hasn't worked to its full potential meaning that the sugar may not have been converted to alcohol? If this is the case could this be because the yeast is old? Is there any other potential reason why my beer is overly sweet?
The yeast could be old. Sometimes those off the shelf kits can be really old, but all the ones I am familiar with come with dry yeast and those packs should be good for over a year, unless the pack got super hot, or a bad batch of yeast, etc.
Other potential issues with a higher finish gravity could be: the yeast isn't finished, so allow more time before bottling, especially if bottling in glass bottles as you can get "bottle bombs" that blow up if the yeast start eating your priming sugar and the CO2 generated exceeds the limit of the bottles. Taking longer than "expected" could be attributed to many things, some common ones: Perhaps you did not pitch enough yeast, or the temperature you fermented at was below the common temperature threshold for the yeast, usually under lows 60 for most ales and the fermentation slows. Although, those directions tend to be a little eager for bottling, I haven't moved a beer out of a primary fermenter in less than 3 weeks in years.
I doubt this is the issue, but if you have a type of yeast attenuates (% of sugar in the beer a yeast eats) much less than most yeast can cause sweet beer. Meaning the yeast will only eat so much of sugar before it stops fermenting. Most of the time this won't make as big of difference as your describing, but I figured I'd add it for completeness sake.
Another reason why you can get overly sweet beer, and this is rare for general beer making and requires an extra step in your process, is is you add potassium sorbate or something similar to purposefully stop yeast activity. Substances like this are often used when making sweet wines and campaigns. I've never seen one in a beer kit, though, so this is probably not the case, but if someone were to add it too early, the yeast would not be able to eat all the sugar once the sorbate is added, hence, sweeter beer.
If you want to keep trying to get the gravity lower, you can wait longer, move the primary to a warmer place (~65 degrees for ales, is a good general temp), or pitch some more yeast.
Several problems can be occurred, one that is very common in the first brewing is temperature control, mainly if using stainless steel kettles. You can denatured enzymes heating the wort above the enzyme range activity. Did you made iodine test to measure starch conversion into sugars ?