Wrong transmitted GPS coordinates

Using Neo 6m GPS and Nrf24l01. I have issues on the gps data which is being sent to the transmitter.

Transmitter Serial monitor gps coordinates which is correct:

Latitude= 14.565749 Longitude= 120.994232
Humidity: 72.00 Temperature: 30.00
Latitude= 14.565739 Longitude= 120.994224
Humidity: 72.00 Temperature: 30.00
Latitude= 14.565732 Longitude= 120.994216
Humidity: 72.00 Temperature: 30.00
Latitude= 14.565726 Longitude= 120.994216
Humidity: 72.00 Temperature: 30.00
Latitude= 14.565724 Longitude= 120.994209
Humidity: 72.00 Temperature: 30.00
Latitude= 14.565716 Longitude= 120.994201
Humidity: 72.00 Temperature: 30.00

Reciever Serial monitor gps coordinates which is wrong and sometimes humidity and temperature goes zero:

Latitude= 16881.117187 Longitude= 0.000000
Humidity: 73.00 Temperature: 30.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 72.00 Temperature: 30.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 72.00 Temperature: 30.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 73.00 Temperature: 30.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 73.00 Temperature: 30.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 0.00 Temperature: 0.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 73.00 Temperature: 30.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 73.00 Temperature: 30.00
Latitude= 14.565686 Longitude= 120.994338
Humidity: 73.00 Temperature: 30.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 73.00 Temperature: 30.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 0.00 Temperature: 0.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 0.00 Temperature: 0.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 0.00 Temperature: 0.00
Latitude= 16881.117187 Longitude= 0.000000
Humidity: 73.00 Temperature: 30.00

This is my Transmitter code:

#include "dht.h"
#include <TinyGPS++.h>
#include <SoftwareSerial.h>
#include <SPI.h>
#include <RF24.h>

static const int RXPin = 2, TXPin = 3;//RXpinmodule to pin 3 and Txpinmodule to pin 2
static const uint32_t GPSBaud = 9600;
unsigned long currentMillis = 0;
// The TinyGPS++ object
TinyGPSPlus gps;
// The serial connection to the GPS device
SoftwareSerial ss(RXPin, TXPin);
#define dht_apin A0
dht DHT;
struct package
    {
    float temperature ;
    float humidity ;
    };
typedef struct package Package;
Package data;
RF24 radio(9, 10); // CE, CSN
const byte address[6] = "00001";

void setup()
{
  Serial.begin(9600);
  ss.begin(GPSBaud);
       radio.begin();
       radio.openWritingPipe(address);
       radio.setPALevel(RF24_PA_MIN);
       radio.setDataRate(RF24_1MBPS);
       radio.stopListening();

}

void loop(){
  currentMillis = millis();
  Update_DHT11();
  Update_GPS();

}

void Update_GPS() {
  
  // This sketch displays information every time a new sentence is correctly encoded.
  while (ss.available() > 0){
      gps.encode(ss.read());
    if (gps.location.isUpdated()){
      Serial.print("Latitude= "); 
      Serial.print(gps.location.lat(), 6);
      Serial.print(" Longitude= "); 
      Serial.println(gps.location.lng(), 6);
      Serial.print("Humidity: ");
      Serial.print(data.humidity);
      Serial.print(" Temperature: ");
      Serial.println(data.temperature);
      radio.write(&gps.encode, sizeof(gps.encode));
     
    }
  }
}
void Update_DHT11() 
  {
   DHT.read11(dht_apin);
     data.humidity = DHT.humidity;
     data.temperature = DHT.temperature;
     radio.write(&data, sizeof(data));
     
      
}

This is my Reciever Code:

#include <dht.h>
#include <SPI.h>
#include <RF24.h>
#include <Wire.h>
#include "LiquidCrystal_I2C.h"
#include <TinyGPS++.h>
#include <SoftwareSerial.h>
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); 


struct package
    { 
    float temperature;
    float humidity;
    };
typedef struct package Package;
Package data;
TinyGPSPlus gps;

RF24 radio(9, 10); // CE, CSN
const byte address[6] = "00001";

void setup() 
    {
      Serial.begin(9600);
      radio.begin();
      radio.openReadingPipe(0, address);
      radio.getPALevel();
      radio.getDataRate();
        lcd.begin(16, 2);
        lcd.backlight();
        lcd.clear();
        lcd.print("Humidity & temp");
        delay(1000);
        lcd.clear();
        lcd.print("Starting");
        delay(1000);
      radio.startListening();
     }
void loop() 
{
  if (radio.available()) 
      {
        radio.read(&data, sizeof(data));
        radio.read(&gps.location, sizeof(gps.location));
        Serial.print("Latitude= "); 
        Serial.print(gps.location.lat(), 6);
        Serial.print(" Longitude= "); 
        Serial.println(gps.location.lng(), 6);
        Serial.print("Humidity: ");
        Serial.print(data.humidity);
        Serial.print(" Temperature: ");
        Serial.println(data.temperature);
          lcd.setCursor(0, 0);
          lcd.print("Hum: ");
          lcd.print(data.humidity);
          lcd.print(" %");
          lcd.setCursor(0, 1);
          lcd.print("Temp: ");
          lcd.print(data.temperature);
          lcd.print(" C");
        delay(500);
      }
  else
        Serial.println("No Radio Available");
        delay(1000);
          lcd.clear();
          lcd.setCursor(0, 0);
          lcd.print("No Radio");
          lcd.setCursor(0, 1);
        lcd.print("Available");
  
}
      radio.write(&gps.encode, sizeof(gps.encode));

You seem to be sending the encode() function. ?!?

The sending and receiving of the 'package' structure seems to be OK. Since you receive the "gps.location" object you should probably send the "gps.location" object. Or you could send and read the values.