Barcelona moved three points clear at the top of La Liga after a hard-fought 2-0 win at struggling Levante.