It is important to understand that images are stored and measured in pixels, not pixels per inch. Print production is traditionally predicated on about 300dpi, so if you want a 4 inch square image (when printed, since inches don't exist in computers), you need to provide 1200x1200 pixels to meet the specification.
Further, it is my understanding that the notation of desired or intended ppi/dpi is not even supported by the PNG-24 file format.
In other file formats (such as TIFF), DPI is merely a flag (or suggestion) to software, but the only thing that matters is how many pixels there are.
In the absence of a dpi flag stored in file, the software working with the file must guess, and the typical default is probably going to be screen-based which is traditionally 72 or 96 ppi. Considering that 18" (actual) divided by 4" (desired) is 4.5 and 72 x 4.5 is about 320 then my guess is that in Photoshop your image settings are 320dpi; 4 inches wide; 1280 pixels wide. (1280x720pixels is close to the 720p standard screen resolution).
In your specific case, the image when placed is too big: this is OK. All you need to do is set the percentage scale to the size you want and run with it (try 20-25% size). If you want to avoid this in the future, use a file format such as TIFF for print production. JPEG also stores the dpi flag AFAIK, but JPEG is a lossy form of compression which can degrade the print quality.
Note: to adjust the dpi in photoshop without altering the pixel dimensions, you can copy either the px height or px width value, alter the dpi, then manually change the px value back to what it was. This alters nothing but the dpi flag (you'll see the projected file size increase when you change the dpi, but then go back to exactly what it was when you revert the pixel dimension value)