As a followup to @n_shay 's very helpful post... if you have a lot of items that need fixing, you can do the following. Standard disclaimer applies - I know a lot of SQL from my day job, but not as experienced with SQLLite. Backup your db, and use at your own risk.
-- This will give you all of the rows of items containing an added_at date that is greater than right now. I use this to get a rowcount of how many incorrect add dates I have in my db.
select * from metadata_items where added_at >= date('now')
-- To fix them we are going to do just as before and set the added_at date = to created_at, but instead of running a command for each record (I had several hundred)... we are going to do them all in one swoop. This looks at all the records in the metadata_items table, and if the added_at date is after right now, then it sets added_at equal to created_at.
set added_at = created_at
where added_at >= date('now')
Interesting fact, my weird added_at dates were also 2038. Is it possible that there is a condition that will trigger Plex to auto fill in a date like that? I've seen some weird bugs during row creation when using XML or metadata sources in SQL. Maybe its a check that needs to be made on the import side of Plex? I looked at the raw file metadata prior to import, and couldn't see a 2038 date in there anywhere, so I'm assuming it isn't a problem with a rip/file. I'd be happy to take a look at the import process if somebody at Plex wanted me to.