dsPIC33 oscillator and timer configuration
It is a lot easier to offer help when the Original Poster provides a small but complete example that can be built.
This is what I think the OP may have been trying to do:
/*
 * File:   main.c
 * Author: dan1138
 *
 * Created on October 6, 2020, 3:12 PM
 * 
 * Description:
 * 
 * Clock switching example in answer to SrtackExchange question:
 * 
 * https://electronics.stackexchange.com/questions/524767/dspic33-oscillator-and-timer-configuration
 * 
 * This example supposes that the circuit diagram for the dsPIC is:
 * 
 * https://i.stack.imgur.com/8Aqa6.jpg
 * 
 */

// DSPIC33EP64MC202 Configuration Bit Settings

// 'C' source line config statements

// FICD
#pragma config ICS = PGD2               // ICD Communication Channel Select bits (Communicate on PGEC2 and PGED2)
#pragma config JTAGEN = OFF             // JTAG Enable bit (JTAG is disabled)

// FPOR
#pragma config ALTI2C1 = OFF            // Alternate I2C1 pins (I2C1 mapped to SDA1/SCL1 pins)
#pragma config ALTI2C2 = OFF            // Alternate I2C2 pins (I2C2 mapped to SDA2/SCL2 pins)
#pragma config WDTWIN = WIN25           // Watchdog Window Select bits (WDT Window is 25% of WDT period)

// FWDT
#pragma config WDTPOST = PS32768        // Watchdog Timer Postscaler bits (1:32,768)
#pragma config WDTPRE = PR128           // Watchdog Timer Prescaler bit (1:128)
#pragma config PLLKEN = ON              // PLL Lock Enable bit (Clock switch to PLL source will wait until the PLL lock signal is valid.)
#pragma config WINDIS = OFF             // Watchdog Timer Window Enable bit (Watchdog Timer in Non-Window mode)
#pragma config FWDTEN = OFF             // Watchdog Timer Enable bit (Watchdog timer enabled/disabled by user software)

// FOSC
#pragma config POSCMD = HS              // Primary Oscillator Mode Select bits (HS Crystal Oscillator Mode)
#pragma config OSCIOFNC = ON            // OSC2 Pin Function bit (OSC2 is general purpose digital I/O pin)
#pragma config IOL1WAY = OFF            // Peripheral pin select configuration (Allow multiple reconfigurations)
#pragma config FCKSM = CSECME           // Clock Switching Mode bits (Both Clock switching and Fail-safe Clock Monitor are enabled)

// FOSCSEL
#pragma config FNOSC = FRC              // Oscillator Source Selection (Internal Fast RC (FRC))
#pragma config PWMLOCK = OFF            // PWM Lock Enable bit (PWM registers may be written without key sequence)
#pragma config IESO = ON                // Two-speed Oscillator Start-up Enable bit (Start up device with FRC, then switch to user-selected oscillator source)

// FGS
#pragma config GWRP = OFF               // General Segment Write-Protect bit (General Segment may be written)
#pragma config GCP = OFF                // General Segment Code-Protect bit (General Segment Code protect is Disabled)

// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.
/*
 * Include target specific definitions for special function registers
 */
#include &lt;xc.h&gt;
/*
 * Include standard C library for I/O
 */
#include &lt;stdio.h&gt;

/*
 * Define the system clock source
 */
/* Setup the clock to run at about 60 MIPS (60.00 actual)*/
#define FXTL  (15000000L)   /* External crystal frequency */
#define PLL_N1 (2L)         /* PLLPRE  CLKDIV&lt;4:0&gt; range 2 to 33 */
#define PLL_M  (32L)        /* PLLDIV  PLLFBD&lt;8:0&gt; range 2 to 513 */
#define PLL_N2 (2L)         /* PLLPOST CLKDIV&lt;7:6&gt; range 2, 4 or 8 */
#define FSYS (FXTL*PLL_M/(PLL_N1*PLL_N2))
#define FCYC (FSYS/2L)
/*
 * Declare a constant in code space so we 
 * can check that all that #define nonsense 
 * worked as expected.
 */
const unsigned long SystemFrequency = FSYS;
/*
 * Initialize this PIC
 */
void PIC_init(void)
{
    unsigned short ClockSwitchTimeout;

    /*
     * Disable all interrupt sources
     */
    __builtin_disi(0x3FFF); /* disable interrupts for 16383 cycles */
    IEC0 = 0;
    IEC1 = 0;
    IEC2 = 0;
    IEC3 = 0;
    IEC4 = 0;
    IEC5 = 0;
    IEC6 = 0;
    IEC8 = 0;
    IEC9 = 0;
    __builtin_disi(0x0000); /* enable interrupts */

    /*
     * At Power On Reset the configuration words set the system clock
     * to use the FRC oscillator. At this point we need to enable the
     * PLL to get the system clock running at 120MHz.
     * 
     * Clock switching on the dsPIC33E family with the PLL can be a bit tricky.
     * 
     * First we need to check if the configuration words enabled clock
     * switching at all, then turn off the PLL, then setup the PLL and
     * finally enable it. Sounds simple, I know. Make sure you verify this 
     * clock setup on the real hardware.
     */

    if(!OSCCONbits.CLKLOCK) /* if primary oscillator switching is unlocked */
    {
        /* Select primary oscillator as FRC */
        __builtin_write_OSCCONH(0b000);

        /* Request switch primary to new selection */
        __builtin_write_OSCCONL(OSCCON | (1 &lt;&lt; _OSCCON_OSWEN_POSITION));

        /* wait, with timeout, for clock switch to complete */
        for(ClockSwitchTimeout=60000; --ClockSwitchTimeout &amp;&amp; OSCCONbits.OSWEN;);

        /* configure PLL register */
        CLKDIVbits.DOZE = 0;
        CLKDIVbits.DOZEN = 0;
        CLKDIVbits.PLLPRE = PLL_N1-2;
      #if   PLL_N2==2
        CLKDIVbits.PLLPOST=0; /* N2=2 */
      #elif PLL_N2==4
        CLKDIVbits.PLLPOST=1; /* N2=4 */
      #elif PLL_N2==8
        CLKDIVbits.PLLPOST=3; /* N2=8 */
      #else
      #error invalid PLL_N2 paramenter
      #endif
        PLLFBDbits.PLLDIV = PLL_M-2; /* set PLL to multiply by 32 */

        /* Select primary oscillator as External HS crystal+PLL */
        __builtin_write_OSCCONH(0b011);
        /* Request switch primary to new selection */
        __builtin_write_OSCCONL(OSCCON | (1 &lt;&lt; _OSCCON_OSWEN_POSITION));
        
        /* wait, with timeout, for clock switch to complete */
        for(ClockSwitchTimeout=60000; --ClockSwitchTimeout &amp;&amp; OSCCONbits.OSWEN;);

        /* wait, with timeout, for the PLL to lock */
        for(ClockSwitchTimeout=60000; --ClockSwitchTimeout &amp;&amp; !OSCCONbits.LOCK;);
        
        /* at this point the system oscillator should be 120MHz */
    }
}
/*
 * UART2 initialization
 */
#define BAUDRATE        9600      //   9600          
#define BRGVAL         ((FCYC/BAUDRATE)/16)-1

unsigned short __C30_UART=2;    // associates printf with UART2

void UART2_Init(void)
{
    U2BRG = BRGVAL ;            // Set Baud Rate to the value calculated by the BRGVAL macro 

    U2MODEbits.UARTEN = 1;      // enable UART
    U2STAbits.UTXEN = 1;        // enable UART TX
    U2STAbits.URXISEL = 0;      // interrupt after a characters is received

    IFS0bits.U1RXIF = 0;

    _RP43R = 0b0000011;         // UART2 TXD on RB11/RP43
    _U2RXR = 0b0101100;         // UART2 RXD on RB12/RPI44
}
/*
 * Main application
 */
int main(void) 
{
    PIC_init();
    UART2_Init();
    
    printf(&quot;\r\ndsPIC33EP64MC202 Clock switch demo\r\n&quot;);
    
    /*
     * Make PORTB bit RB1 a digital output
     */
    ANSELBbits.ANSB1 = 0;
    TRISBbits.TRISB1 = 0;
    LATBbits.LATB1 = 0;
    
    /* embedded applications never return from main */
    for(;;)
    {
        __asm(&quot;1: repeat #(120-8)\n nop\n btg LATB,#1\n bra 1b&quot;); /* toggle RB1 every 120 instruction cycles */
    }
}
/*
 * Catch oscillator fail trap
 */
void __attribute__ ((interrupt, no_auto_psv)) _OscillatorFail(void)
{
    OSCCONbits.CF = 0;
    while(1);
}