Having said that, I don't really see Excel as a legitimate choice for being a data back-end. It is a front-end for data analysis (IMHO). It's like using a pocket knife as a screwdriver: it can do the job in a pinch, but it's not the best tool for repeating the same task many times.
With that out of the way, I'd say that SQL is the better of the options because that's the job it was meant to do - irrespective of data set size. Sqlite is a fabulous tool that should meet all of your requirements.
Go forth and prosper.
edit: I forgot to mention that it also supports Full-Text Search which may be handy for your search engine application (if that's being developed in-house).
(another) edit: With 15 columns, I wonder if normalization might be an intermediate step.