Problem #1: I don't know, sorry.
Problem #2:
If I want a fixed camera behind an entity I'd use something like this (almost the same as your code):
// position
vec_set(camera.x, cam_pos_offset);
vec_rotate(camera.x, entity.pan);
vec_add(camera.x, entity.x);
// angle
vec_set(camera.pan, entity.pan);
ang_rotate(camera.pan, cam_ang_offset);
If you want an angle independent rotation you're probably looking for ang_rotate (like I've used in the code above).
HOW CAN I CHANGE THE PAN, TILT AND ROLL ANGLES OF AN ENTITY WITHOUT CHANGING THE DIRECTIONS OF ITS LOCAL AXES
I don't think thats possible.
But you could assing all vertices to a single bone and use animations to rotate the model (collisions won't work properly).
Anyway, with ang_rotate something similar
should be possible.