The LoRaWAN network is proposed for IoT applications and has the advantages of long range transmission and low power consumption. However, it suffers from very low data throughputs and long transmission duty cycle delays. In our real on-campus LoRaWAN deployment that has been lasting for one year, we found that even though we placed LoRaWAN end devices (nodes) at a short distance such as less than 700 meters from a LoRaWAN gateway, the packet loss rates at some locations are still too high to be acceptable. In this paper, we propose two approaches to overcome this high packet loss rate problem. We modified the IoT application running on nodes to let a node retransmit its lost data in multiple packets and help transmit its neighboring node's data. Our experimental results show that our approaches can effectively increase the application-layer message delivery success rate of LoRaWAN.