1. Go to your WordPress dashboard and select options, permalinks. Scroll to the bottom of the page and see if this message is displayed:
"If your .htaccess file were writable, we could do this automatically, but it isn’t so these are the mod_rewrite rules you should have in your .htaccess file. Click in the field and press CTRL + a to select all."
2. If so, temporarily chmod your .htaccess file to 777. This can be done using your File Manager within your cPanel control panel. Be sure that when you open your File Manager to click the box that says "show hidden files" because .htaccess is a hidden file. Click on .htaccess and then at the top of the File Manager choose "change permissions".
3. Go to your
WordPress dashboard and set your permalinks to the desired structure and update.
Note the resulting messages, if any. .htaccess needs to be writable by
WordPress in order for WordPress to make the changes.
4. Make sure that you chmod .htaccess back to 644 when done. Do not leave it "World Writable". If this is not successful, at least it may help in guiding you to the real problem.
I know this may sound like redundant information, but sometimes just "refreshing" the permalink structure seems to be a cure.