Tempdb Files vs Sys.Master_files

How did you get in this state?

Why not simply drop tempdb, and restart sql, tempdb should be recreated at that time