Sqlite Batch File Insert
I'm a bit hazy on the Java API but I think you should start a transaction first, otherwise calling commit is pointless. Do it with conn.setAutoCommit(false). Otherwise SQLite will be journaling for each individual insert / update. Which requires syncing the file, which will contribute towards slowness.
Batch File Tutorial
EDIT: The questioner updated to say that this is already set true. In that case: That is a lot of data.
That length of time doesn't sound out of this world. The best you can do is to do tests with different buffer sizes. There is a balance between buffer jitter from them being too small and virtual memory kicking in for large sizes. For this reason, you shouldn't try to put it all into one buffer at once. Split up the inserts into your own batches.
Make your SQLite bulk inserts very fast in C#.NET 16 Mar 2012 In SQLite if you insert one record at a time then they are wrapped in individual transactions. In order to for your bulk inserts to perform very fast then you need to wrap them all in a single transaction. You should be able to able to insert very quickly without having to worry about PRAGMAs I was able to insert 1 million rows in about 4 seconds. I completed this example with a c# console application in Visual Studio 2010.

I installed the NuGet package called System.Data.SQLite (x86) version 1.0.79.0. This will add a project reference to System.Data.SQLite (and System.Data.SQLite.Linq which is not needed for this example).
If you do put a loop around an INSERT, rather than using the CLI.import command, then be sure to follow the advice in the sqlite FAQ for INSERT speed: By default, each INSERT statement is its own transaction. But if you surround multiple INSERT statements with BEGIN.COMMIT then all the inserts are grouped into a single.
The NuGet package is 'The official SQLite database engine combined with a complete ADO.NET provider all rolled into a single mixed-mode assembly for x86.' Create your Person Table in SQLite for our test.