I saw that address and control fields are constant in PPP protocol. What is the need for even having a field that has constant value in it if we had not have this field then wouldn't it have saved some overhead?
The address and control fields were designed with future changes in mind, and other values "may be defined at a later time, or by prior agreement." (RFC 1662 "PPP in HDLC-like Framing", section 3.1)
You're absolutely right of course, this is overhead. The immediately following section 3.2 explains that they are able to be compressed:
When using the standard HDLC-like framing, the Address and Control fields contain the hexadecimal values 0xff and 0x03 respectively. When other Address or Control field values are in use, Address- and-Control-Field-Compression MUST NOT be negotiated.
On transmission, compressed Address and Control fields are simply omitted.
On reception, the Address and Control fields are decompressed by examining the first two octets. [details follow]
Address-and-Control-Field-Compression is an option which can be negotiated by the Link Control Protocol defined in RFC 1661 "The Point-to-Point Protocol" section 6.