How should I shift values to one place back in SqLite?
Assuming your ID column is correct and sequential, you can join the table to itself on the ID column = ID column + 1.
Psuedo-Example:
SELECT T1.id, T1.f2 AS f1, T1.f3 AS f2, etc, T2.f1 AS f15
FROM YourTable AS T1 
INNER JOIN YourTable AS T2
ON T1.id = T2.id + 1

Then with that dataset you can put it in a CTE (https://sqlite.org/lang_with.html) and then do an update statement on your table. I.e. you can update YourTable with the values from the CTE, e.g. SET YourTable.f15 = CTE.f15
Psuedo-Example:
UPDATE YourTable 
SET f1 = (SELECT f1
              FROM YourCte
              WHERE YourTable.id = YourCte.id)
 WHERE EXISTS (SELECT id
                  FROM YourCte
                  WHERE YourTable.id = YourCte.id)  

Just fill in the rest of the columns in the SELECT of the CTE, and the UPDATE statement.
Your last record in the table will need to be manually fixed assuming it's last value is just missing.