My question is would using a slite3 database for each user within one web application be viable?
It is "technically" possible but highly unorthodox. Using sqlite this way would be well outside the assumed "solution space" for which it was designed.
So, viable ? No.
Or would it be too hard on server resources?
It is such an unexpected use-case I doubt it's ever been benchmarked.
In some ways it seems it would be easier especially on large sites, but then what about comments?
The standard practice would be to design the database to hold all the users data in one database. Each table that referenced any data specific to one user would have a column with a value that uniquely identified that user.
In this way you can safely store all the users data mixed in together in one database.
Here is a very basic example that might help illustrate the principle.
All the following tables are in 1 single database
TABLE = "users"
"user login nickname"
TABLE = "forum threads"
TABLE = "forum thread comments"
"comment user id"